Vic*_*748 8 javascript forms submit
我有一个简单的html表单:
<form action="test" method="post" id="myForm">
<input type="text" name="myTextField">
<input type="text" name="myTextField2">
<input type="text" name="dontSubmitThisField">
</form>
Run Code Online (Sandbox Code Playgroud)
我需要使用JavaScript提交它,但我想dontSubmitThisField从请求中排除该字段.有没有办法在没有Ajax的情况下做到这一点?
只需禁用该字段.
如果用户无法更新该字段,请通过HTML执行此操作:http://www.w3schools.com/tags/att_input_disabled.asp
或者通过提交事件的jQuery来做:
$('#myForm').submit(function(){
$('input[name="dontSubmitThisField"]').prop('disabled', true);
});
Run Code Online (Sandbox Code Playgroud)
禁用的字段或没有name属性的字段将不会提交。
但是,如果您想以某种方式命名您的字段并且不想预先禁用它们,则可以拦截所有表单提交并禁用具有data-no-submit属性的每个字段。
document.addEventListener('submit', function (e) {
if (!e.defaultPrevented) {
[].forEach.call(e.target.querySelectorAll('[data-no-submit]'), function (field) {
field.disabled = true;
});
}
});
Run Code Online (Sandbox Code Playgroud)
然后,您可以执行以下操作:
<input type="text" name="dontSubmitThisField" data-no-submit>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5522 次 |
| 最近记录: |