0

我有一个js问题。这个网站:http ://befwifi.bobevans.com/Mobile.aspx (不是我的网站)

如何以编程方式使用 js 模拟点击“我同意条款”标签?

模拟点击必须与真实点击完全一样。即使该框看起来已选中,而不刷新页面。

例如,这些都不起作用!

document.getElementsByTagName("label")[0].click()

$(document.getElementsByTagName("label")[0]).click()

$(document.getElementsByTagName("label")[0]).trigger("click")

(网站使用jquery)

目的:

我正在创建一个通用 js 脚本来记录页面上的所有点击和输入。然后,当您再次登陆该页面时,您可以重播这些事件。我被这个页面难住了,因为虽然我可以轻松地将 onclick 记录到标签上,但是当我以编程方式重放 click() 时,它的作用与我自己单击元素时不同。

4

3 回答 3

1

尝试单击checkbox而不是标签。这将做你想要的。

document.getElementById("chkAcceptTerms").click();

于 2012-10-31T16:05:42.700 回答
0

您需要点击相关输入,例如使用 ID 选择器;

$("#" + $("label").attr("for")).click();
于 2012-10-31T16:09:30.420 回答
0

该网页使用jquery mobile

<input id="chkAcceptTerms" type="checkbox" name="chkAcceptTerms"/> <label for="chkAcceptTerms">I AGREE TO THE TERMS</label>

模拟点击事件试试这个:

$("#chkAcceptTerms").click();
于 2012-10-31T16:10:00.343 回答