我需要一些Javascript的帮助。
在我的HTML中,我有一个重复两次的表单。
<form method='post' action='php page'>
<input type=text id=something name=something value='' />
<input type="submit" id="final_submit" value="yes">
</form>
这种确切的形式重复两次。在javascript中,当有人点击提交按钮时,我需要能够确定单击了哪个按钮以获取该表单中某些内容的值。现在,即使我单击第二个表单上的按钮,它也会自动获取第一个表单的值。
请任何想法。
答案 0 :(得分:0)
这就是你需要的吗?
function determineForm(e)
{
// This prevents the form from actually being submitted.
// Just remove it when you are done debugging.
e.preventDefault();
if (document.querySelectorAll("form")[0] === e.target)
{
alert("Form1");
}
else
{
alert("Form2");
}
}
document.addEventListener("submit", determineForm, false);
答案 1 :(得分:0)
如评论中所述,使用重复的ID是错误的。这是一种获取输入值的方法,该输入值也可用于使用旧版浏览器document.forms
和forms.element
var forms = document.forms;
for(var i=0, l= forms.length; i++){
forms[i].addEventListener('submit', function(e){
e.preventDefault();
var form = e.target;
var value = form.elements[0].value;
})
}
这将为您身边的每个表单添加一个提交事件侦听器,并停止事件并从此表单中的第一个输入字段中获取值。