gpt4 book ai didi

javascript - 如何使用 Capybara/Poltergeist 在页面上运行一个函数?

转载 作者:数据小太阳 更新时间:2023-10-29 05:00:59 25 4
gpt4 key购买 nike

我在 <script> ... </script> 中有一个带有 JS 函数(通过鼠标单击调用)的页面标签。在我进行测试时,我遇到了 .click 方法多次无法正常工作的问题。因此我决定简单地手动调用该函数。但是,我在 Internet 上找不到任何资源可以教您如何执行此操作。

我想避免点击链接并简单地调用 doSumbit('5') .谢谢!

JS 函数是:

<script language="javascript">
function doSubmit(infoTypeId) {
document.forms[1].INFOTYPEID.value = infoTypeId;
document.forms[1].action = document.forms[1].action + "#" + infoTypeId;
document.forms[1].submit();
document.forms[0].INFOTYPEID.value = infoTypeId;
document.forms[0].submit();
}
function doSubmitOne(infoTypeId) {
document.forms[0].INFOTYPEID.value = infoTypeId;
document.forms[0].submit();
}
</script>

点击链接是:

 <a href="javascript:doSubmit('11')" >Engine News<br></A>
<a href="javascript:doSubmit('5')" >Parts Identification<br></A>

最佳答案

你可以用execute_script运行任意JS

page.execute_script("doSubmit('5')")

如果您希望返回值,请使用 evaluate_script - 所有内容都记录在此处 - http://www.rubydoc.info/gems/capybara/Capybara/Session#evaluate_script-instance_method

当然,如果你真的在测试一个应用程序,你最好弄清楚为什么点击对你不起作用并修复它,因为通过调用 JS 函数你实际上并没有测试你的应用程序有效。

编辑:打字错误 doSubit 更改为 doSubmit

关于javascript - 如何使用 Capybara/Poltergeist 在页面上运行一个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38782304/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com