Web表單重複提交將可能造成資料重複的困擾,防止表單重複有很多作法,可以從Server端或是Client端處理,以下先介紹最簡單的方式,在Client端,按下按鈕後就立刻將按鈕失效,如此避免重複被按到。
<button type="button" class="btn btn-primary" id="submmitBtn" onclick="btnSubmit(this)">確定送出</button>
<script type="text/javascript">
function btnSubmit(obj){
$(obj).attr("disabled", true);
var account = $.trim($("#account").val());
var password = $.trim($("#password").val());
var vidFileLength = $("#formFile")[0].files.length;
if(account.length === 0 || password.length === 0){
alert("請輸入帳號與密碼。");
$(obj).attr("disabled", false);
} else if(vidFileLength === 0){
alert("請選擇上傳壓縮檔案。");
$(obj).attr("disabled", false);
} else {
var fileType = $("#formFile")[0].files[0].type;
if(fileType == "application/x-zip-compressed"){
$("#uploadForm").submit();
} else {
alert("檔案格式不正確,請選擇壓縮檔。");
$(obj).attr("disabled", false);
}
}
}
</script>