以下是没有onclick
属性的表单中的“提交”按钮。
<div id="243c0bb6-584e-4d48-a8fa-4308cd632028" class="nike-unite-submit-button joinSubmit nike-unite-component blurred">
<input id="d7e56d05-36e1-42f7-922b-d2979375007a" type="button" value="CREATE ACCOUNT">
</div>
我对来自耐克网站来源的<form>
代码更加困惑:
<form id="nike-unite-joinForm" class="nike-unite-form" method="post"
action="javascript:;" onsubmit="return false;">
...
</form>
当我实际点击页面上的按钮时,如何知道发生了什么? 在chrome dev工具中使用鼠标单击断点给我提供了大量的JavaScript函数,这需要我很长时间才能解析。
如果在ID中添加了属性或侦听器(例如指向脚本的链接),则在对表单的不同属性使用“Command-F”后,我找不到它们。
我不确定如何解决的唯一其他线索是method="post"
。
据我所知,所有网站都不同,但我的问题很普遍: 当我点击表单时,如何确定正在运行的脚本?
提前致谢。
答案 0 :(得分:1)
试试这个:
document.getElementById('nike-unite-joinForm').submit();
这是来自w3schools.com:
https://www.w3schools.com/jsref/met_form_submit.asp
编辑: 好的,我在注册网站上自己尝试过它并没有用。尝试了一下我发现有一个明显随机的id分配给DOM-Elements。 但我找到了解决方案:
document.getElementsByClassName("nike-unite-submit-button joinSubmit nike-unite-component")[0].children[0].click();
这是有效的,因为提交按钮所在的div具有一组唯一的类。所以我得到了这个类的第一个(也是唯一的)元素,并将.click()应用于第一个子元素
答案 1 :(得分:-1)
也许您可以尝试通过点击更改提交:
document.getElementById('nike-unite-joinForm').click()