我有一个HTML表单,可以动态扩展,最终可以有400多个输入字段。 我想有选择地决定在提交表单时发布哪些字段(不是通过AJAX),以便只提交值已更改的字段。
我知道只有具有name属性的输入字段才会被发布,所以我的想法是采用每个元素Id(已更改)并使用JQuery添加名称属性,如下所示: -
$('#field1')。attr('name','field1');
这将在提交之前,因此(理论上)只提交已更改的字段。
我已经通过谷歌搜索了寻找这样做的例子,但令人惊讶的是在任何地方找不到任何例子。我所看到的最接近的是有人提到在提交前禁用字段。
所以我的问题是: - 这个想法会起作用吗? 如果是这样,使用这种方法是否有任何负面原因?
提前感谢您的帮助。
答案 0 :(得分:1)
$('input').change(function(){
var newName = $(this).attr("id"); //could use any attribute, maybe data-name
$(this).attr("name", newName);
})
当任何输入字段发生变化时,id会被添加到字段中作为其名称。
对于一般的设计问题,我可能会提交整个表单,并且只更新服务器端更改的字段 - 在我的情况下它实际上将由hibernate处理。