如何在 puppeteer 中启用或禁用 [=10=] 的元素属性
How to enable or disable the element attribute to true/false in puppeteer
我想使用 jQuery 启用元素不知道如何在 puppeteer 中实现,但它给出了一个错误 Property 'attr' does not exist on type 'Promise<ElementHandle<Element>>'.
这是我的代码:
await page.$('[name=creditCardNumber],[name=cvv]').attr('disabled',false);
这是我需要执行的jQuery
$('[name=creditCardNumber],[name=cvv]').attr('disabled',false)
问题
page.$('[name=creditCardNumber],[name=cvv]')
returns 一个 Promise,你首先需要等待它才能调用一个函数(就像 attr
一样)。
还有一个问题:函数attr
是一个jQuery函数,在puppeteer的ElementHandle
上是没有的。
修复
您可以select节点,然后使用函数page.$eval
将disabled
设置为false
(没有jQuery)。该函数首先查询一个节点,然后在其上执行该函数。
await page.$eval('[name=creditCardNumber],[name=cvv]', el => el.disabled = false);
我想使用 jQuery 启用元素不知道如何在 puppeteer 中实现,但它给出了一个错误 Property 'attr' does not exist on type 'Promise<ElementHandle<Element>>'.
这是我的代码:
await page.$('[name=creditCardNumber],[name=cvv]').attr('disabled',false);
这是我需要执行的jQuery
$('[name=creditCardNumber],[name=cvv]').attr('disabled',false)
问题
page.$('[name=creditCardNumber],[name=cvv]')
returns 一个 Promise,你首先需要等待它才能调用一个函数(就像 attr
一样)。
还有一个问题:函数attr
是一个jQuery函数,在puppeteer的ElementHandle
上是没有的。
修复
您可以select节点,然后使用函数page.$eval
将disabled
设置为false
(没有jQuery)。该函数首先查询一个节点,然后在其上执行该函数。
await page.$eval('[name=creditCardNumber],[name=cvv]', el => el.disabled = false);