私が使用するjavascript/jQueryの二重送信防止方法は次のとおりです。
$("#btnsubmit").click(function () {
$("#btnsubmit").attr('disabled','disabled');
$('#postform').submit();
});
したがって、submitclick
では、フォームは送信Submit Button
されます。disabled
したがって、フォームの二重送信は発生しません。しかし。現在の問題は、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');
}
});