javascript/jQuery双重提交预防方法禁止启动html5属性(如Required, Pattern等)



我使用的javascript/jQuery双重提交预防方法是:

$("#btnsubmit").click(function () {
    $("#btnsubmit").attr('disabled','disabled');
    $('#postform').submit();
});

在提交click时,Submit Buttondisabled,表格是submit。因此,双重提交的形式不会发生。但是。现在的问题是html5属性不会初始化(例如Required, Pattern等)

有没有人对如何解决这个问题有任何想法?

或者你可以建议另一种防止双重提交的方法,不会篡改html5属性?

编辑+ DANIEL PATZ回答:

$('#postform').on('submit', function (e) {
    // THIS PART
    var titleLength = $("#title").val().length;
    var descriptionLength = $("#description").val().length;
    if(titleLength < 20 || descriptionLength < 150) {
        $("#ps").text("Title and Desc Problem.");
    } else {
    // UNTIL HERE
        $('[type="submit"]').prop('disabled','disabled');
    }
});

如果您捕获submit事件,它应该工作。http://jsfiddle.net/tcc7u/

HTML:

<form>
    <input required /><br />
    <input type="submit" />
</form>

JS:

$('form').on('submit', function (e) {
    $('[type="submit"]').prop('disabled','disabled');
});

最新更新