0

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

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

所以在提交click时,Submit Buttondisabled并且表单是提交。所以不会发生表单的双重提交。但。现在的问题是html5属性不会启动(例如Required,Pattern等)

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

或者您可以建议不会篡改 html5 属性的替代双重提交预防方法?

编辑+丹尼尔·帕茨回答:

$('#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');
    }
});
4

1 回答 1

4

如果你抓住了这个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');
});
于 2013-05-11T06:22:41.803 回答