javascript - 注入(inject)javascript点击html按钮

标签 javascript swift

我正在尝试将 javascript 注入(inject) WKWebView,以便将商品添加到网站上的购物车。

我有一个按钮:

<input type="submit" name="commit" value="add to cart" class="button">

这是我的代码:

    webView.evaluateJavaScript("document.querySelector('[value=\"add to cart\"]').click();") { (result, error) in
        if error != nil {
            print("Error: ", result)
        }
    }
//do something

我在运行这段代码时收到了一个零错误。我还尝试插入 submit 类型作为选择器,结果仍然是 nil。有没有可能 DOM 还没有加载?我试图通过在评估 javascript 之前添加一个临时 sleep(3) 来解决这个问题,但仍然没有。

最佳答案

您可以通过名称获取它,然后为其添加点击监听器。

document.getElementsByName("commit")[0].addEventListener('click', myFunction, false);

function myFunction() {
       //your code here
}

关于javascript - 注入(inject)javascript点击html按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55995473/

相关文章:

ios - 设计UISegmentControl

swift - cell.imageView!.frame 尺寸变化。 swift

JavaScript 类范围

javascript - JS 检查输入字符串是否为有效代码并运行输入

javascript - 静态 html 中图像之间的空间在 javascript 中消失

Swift:如何自动设置单元格的高度以在屏幕的整个尺寸上本地化

swift - 如何从 TableView 中删除特定的 coreData 对象

swift - NSSegmentedControl 操作未触发

javascript - 使用 JQuery 进行弹出窗口/对话框的最佳方式?

javascript - 捕获用户输入并用作 Flickr API 的搜索,需要让按钮点击正常工作