我正在努力的情况是页面上有更多的表单看起来像这样(每个表单中的hiddenId都不同):
<form method="post">
<input type="hidden" name="hiddenId" value="111222">
<input type="submit" value="Proceed">
</form>
<form method="post">
<input type="hidden" name="hiddenId" value="111333">
<input type="submit" value="Proceed">
</form>
如何使用javascript(我不介意使用jQuery)提交包含所需值的hiddenId的特定表单?谢谢你的帮助!
答案 0 :(得分:7)
这些方面应该让你开始:
var inputs = document.getElementsByTagName("input");
for(var i = 0; i < inputs.length; i++) {
if(inputs[i].type === "hidden" && inputs[i].value === "111333") {
inputs[i].form.submit();
}
}
如果你可以使用jQuery:
$("input[type='hidden'][value='something']").closest("form").submit();
答案 1 :(得分:6)
document.forms是一个数组。 document.forms[0]
是第一个。
元素的工作方式相同:
document.forms[0].elements[0].value
等。
您可以循环直到获得该值,然后提交当前表单:
document.forms[x].submit()
答案 2 :(得分:2)
使用var allForms = document.forms;
根据需要循环访问输入
答案 3 :(得分:1)
您可以使用document.querySelector
或在旧浏览器上模拟它的各种JavaScript库之一来查找隐藏的输入元素,然后使用其form
属性来访问表单并调用{{1方法。
答案 4 :(得分:0)
您可以在表单和提交按钮中添加ID:
<form method="post" id="form1">
<input type="hidden" name="hiddenId" value="111222">
<input type="submit" value="Proceed" id="submit1">
</form>
<form method="post" id="form2">
<input type="hidden" name="hiddenId" value="111333">
<input type="submit" value="Proceed" id="submit2">
</form>
然后使用jQuery提交表单:
$("#submit1").click(function() {
form1.submit();
}
$("#submit2").click(function() {
form2.submit();
}