我正在开展一个项目,我需要回忆一下表格中输入的字段,以便稍后重新填充。当表单有名称时,我可以记住它,然后使用一些JavaScript(document.getElementsByName(...)[0])来访问它。但是,如果没有名字......我不知道如何在以后获得对它的引用。
我正在使用jQuery,但我也对JavaScript解决方案持开放态度。一个想法是记住表单的索引。所以,如果它是document.forms [3],那么后来我可以使用索引。但是,当有人提交表单时,我如何知道表单的索引? (注意:当页面加载以捕获活动时,我会盲目地向所有表单添加提交处理程序。)
答案 0 :(得分:2)
不是将事件附加到提交按钮,而是直接将其附加到<form>
元素,如下所示:
$("form").submit(function() {
//do something with this
//this == the form element being submitted
});
或...在您当前的事件处理程序中,使用.closest()
获取最近的父<form>
元素:
$(":submit").click(function() {
var form = $(this).closest("form");
});
答案 1 :(得分:0)
如果您不想在所有form
上使用索引(因为有人可能会在任何地方添加表单),您可以使用其周围环境作为参考...例如。
$('#content').parent().next().find('form')