我很难从特定表单中获取特定输入。有什么提示吗?
<form id ="frm_addtag-1">
<input type="text" name="tag" id="tag">
</form>
<form id ="frm_addtag-2">
<input type="text" name="tag" id="tag">
</form>
<form id ="frm_addtag-3">
<input type="text" name="tag" id="tag">
</form>
如果提交了frm_addtag-1,我只想从该表单中获取标记输入而不是其他表单。
当我执行类似下面的操作时,无论提交哪种表单,它都会从任何其他表单返回标记输入。
var tag = $("#tag");
var tag = tag.attr("value");
答案 0 :(得分:2)
ID应该是唯一的。
更改ID后,使用.val()
获取元素的值。
此外,当您提交表单时,仅将表单中的元素添加到请求中。
答案 1 :(得分:1)
您不能在同一页面上拥有多个具有相同ID的元素。为什么不这样做:
<form id ="frm_addtag-1">
<input type="text" name="tag1" id="tag1">
</form>
<form id ="frm_addtag-2">
<input type="text" name="tag2" id="tag2">
</form>
<form id ="frm_addtag-3">
<input type="text" name="tag3" id="tag3">
</form>
这是为了获得价值:
$('form').bind('submit', function(e){ // when any form on the page is submitted
e.preventDefault(); // prevent the actual submit so the browser won't leave the current page
var tag = $('input[name^="tag"]', this).val(); // the value of an input element whose name attribute starts with "tag" and that is a child of the current form
});