在js拒绝验证后阻止重置表单

时间:2013-11-14 16:42:47

标签: javascript html5 local-storage

我有一项调查显示,在按钮提交时,如果输入了必填字段,则在我的js中运行的第一件事就是验证。基本上是:

if (x == null) {
    alert("You forgot to enter a required field!.");
    return false;
};

如果他们忘记了一个必填字段,是否有办法阻止页面刷新/重置以前填写过的内容?

如果重要或可以在此帮助,本调查将存储到本地存储。

3 个答案:

答案 0 :(得分:1)

您可以使用Jquerys .submit函数(如果使用Jquery):

$('#formID').submit(function(){
    if (x == null) {
        alert("You forgot to enter a required field!.");
        return false;
    }
});

答案 1 :(得分:0)

首先检查这些答案:

如果您对使用像jQuery这样的框架不感兴趣,可以这样做:

<form name="form" onsubmit="return validate()">

function validate() {
    var input_value = document.forms["form"][" .. input name .. "].value;
    if( input_value == '' ) return false;
}

如果您有多个输入,我建议使用foreach循环遍历它们。

使用jQuery,它将类似于:

$( '#formID' ).on( 'submit', function() {
    event.preventDefault();
    // check input value
    if( valid input ) $( this ).submit();
});

有趣的阅读:return false vs preventDefault

答案 2 :(得分:0)

在表单提交期间处理提交事件,并在处理程序方法中返回false。