node.js - 如何使用 Node Puppeteer 设置 select 的值

标签 node.js automation google-chrome-headless puppeteer

我正在尝试使用相当新的 GoogleChrome/puppeteer 库进行一些自动化操作,但我不知道如何在选择字段中设置值。

这是我设置文本输入值的(简化的)函数:

async function setInputVal(sel, text) {
    await page.focus(sel)        
    page.press('Backspace')
    page.type(text)
}

await setInputVal('input.searchjob', task.id)

我不知道如何为选择字段做同样的事情。

我已尝试设置焦点、插入脚本并执行,但无法正常工作。

最佳答案

我自己找到了解决办法:

async function setSelectVal(sel, val) {
    page.evaluate((data) => {
        return document.querySelector(data.sel).value = data.val
    }, {sel, val})
}

await setSelectVal('#select_id', 'newValue')

关于node.js - 如何使用 Node Puppeteer 设置 select 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45791930/

相关文章:

ios - Appium 自动化无法找到 reusableTableHeaderFooterView 的 elementByAccessibilityId

amazon-ec2 - 运行 chrome headless 时节点 channel 消息无效

python - 如何在同一 session 中将 selenium webdriver 从 headless 模式设置为正常模式?

javascript - 如何在 Puppeteer 中指定浏览器语言

node.js - 关于 Node.js Bootstrap npm 包最近被弃用了吗?

node.js - Nodejs - 了解服务状态的最佳方式 [linux]

javascript - 是否可以自动截取网页的一部分(例如,由 CSS 选择器或 HTML 父元素表示)?

javascript - 如何使用 vanilla javascript 在 Node 服务器上执行函数

javascript - 使用express更新cookie在nodejs中不起作用

automation - Karate -需要帮助来断言日期范围的一维数组