如何防止表单元素发送一些我们不想要的字段? [英] How to prevent form element from sending some fields we don't want?
本文介绍了如何防止表单元素发送一些我们不想要的字段?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个包含大约5个字段的表单元素,最终查询将通过处理这些字段的值来创建。所以我想只发送最后的查询,而不是所有这些,到服务器。如何排除这些字段被提交(使用jQuery)?
< form action =abc / def.aspx方法= GET >
< input type =textname =field1/>
< input type =textname =field2/>
< input type =textname =field3/>
< input type =textname =field4/>
< input type =textname =field5/>
< input type =hiddenname =final/>
< input type =submitvalue =Send/>
< / form>
表单提交的输出如下所示:
abc / def.aspx?field1 = val1& field2 = val2& field3 = val3& field4 = val4& field5 = val5& final = finalQuery
删除提交元素。
在onsubmit处理函数中:
$ $ $ $ $ $ $ $ $ $ $(formElement).submit(function(){
$(this.field1) .remove(); //从查询
中删除字段1返回true; //发送
});
禁用表单元素也会阻止它被输入到查询中(在Chrome上进行测试) p>
$(formElement).submit(function(){
this.field1.disabled = true;
return真; //发送
});
I have a form element that contains about 5 fields which final query is going to create by processing values those fields. So I want to send only final query, not all of those, to the server. How can I exclude those fields from being submitted (using jQuery)?
<form action="abc/def.aspx" method="get">
<input type="text" name="field1" />
<input type="text" name="field2" />
<input type="text" name="field3" />
<input type="text" name="field4" />
<input type="text" name="field5" />
<input type="hidden" name="final" />
<input type="submit" value="Send" />
</form>
Output of form submission looks like below:
abc/def.aspx?field1=val1&field2=val2&field3=val3&field4=val4&field5=val5&final=finalQuery
解决方案
Remove the element on submit.
On the onsubmit handler:
$(formElement).submit(function() {
$(this.field1).remove(); //removing field 1 from query
return true; //send
});
Disabling the form element also stops it from being entered into the query.(tested on Chrome)
$(formElement).submit(function() {
this.field1.disabled = true;
return true; //send
});
这篇关于如何防止表单元素发送一些我们不想要的字段?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文