javascript - Selenium 没有注册按钮按下

标签 javascript html selenium

我在我的一个 AJAX 页面上运行 Selenium IDE 时遇到问题。有一个带有 javascript onclick 提交的 HTML 按钮,单击该按钮后会出现一个新的表单元素。在先前显示的下拉列表中选择了一个选择值后,该按钮也仅通过 AJAX 出现。

Selenium 看到按钮出现并认为它点击了它,但点击实际上不起作用。

由于我不会进入的原因,我暂时无法访问源代码。我知道我在这里可能有点含糊...我会尽可能发布更多细节。

干杯

编辑:澄清一下,我在按钮上使用 waitForVisible 命令,它通过了,然后单击也通过了,但随后它卡在了下一个从下拉列表中进行选择的元素上盒子。 Selenium 认为它正在这样做,但它不是 :(

最佳答案

有时,根据页面中事物的触发方式,selenium 的点击不起作用。 这可能是因为真正的 onClick 稍后在其他地方分配了 javascript(即使 html 告诉您它有一个“onClick”操作。

尝试使用您的定位器作为参数一个接一个地用 mouseDown 和 mouseUp 替换点击 Action :

<tr>
    <td>mouseDown</td>
    <td>button_id</td>
    <td></td>
</tr>
<tr>
    <td>mouseUp</td>
    <td>button_id</td>
    <td></td>
</tr>

祝你好运!

关于javascript - Selenium 没有注册按钮按下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1327808/

相关文章:

Python Selenium 创建循环以单击页面上的链接并在每个新页面上按下按钮

javascript - 从网络节点集计算路径

javascript - 细胞景观 : Graph is not displayed when page is loaded

javascript - Testcafé - 获取不可见 &lt;input&gt; 的值属性的内容

html - 寻求一种紧凑格式的 HTML 电子书,以便在 Linux 下离线阅读

jquery - 无法使 jQuery 函数正常工作

javascript - 按回车键后清除文本框

javascript - 这是将 jquery 插入 HTML 的正确方法吗?

java - 如何使用 selenium 和 java 执行内部滚动

angularjs - Protractor 0.16.1 e2e AngularJS-启动 Selenium 独立服务器…events.js :72 Error: spawn ENOENT