我正在嘗試使用Jquery來驗證窗體的輸入。最重要的是,如果它們留空,我想自動填充一些字段。 這是我如何着手:在窗體上使用jquery的問題
$(form).submit(function() {
var result = true;
var timeRegex = /^([0-9]|0[0-9]|1[0-9]|2[0-3]):([0-5][0-9])$/;
if ($("#newStartTime").val().length == 0) $("#newStartTime").val("00:00");
if (!timeRegex.test($("#newStartTime").val())) {
$("#newStartTime").wrap("<div class='error' />");
result = false;
}
return result;
});
這裏發生的是,輸入被設置爲00:00,但提交被拒絕(與現場包裝成一個錯誤)。如果我重新點擊提交,它工作正常。
我看到的東西的方式,jquery不處理「提交」被調用後所做的修改。 如果是這樣的話,有沒有辦法在不使用「.submit()」的情況下實現我想要的? 如果我錯了,怎麼了?
你的假設是正確的Jquery不會將「提交」被稱爲後所做的修改。 – Okky
不是答案,而是一個醜陋的黑客:你可以通過編程方式點擊提交,就像這樣:'$(「#Submit」).click();'。這裏點擊會發生兩次,但一次通過代碼,另一次通過點擊操作手動。 –
@SreekeshOkky至少我認爲這部分是對的:]你會對第二部分有什麼提示嗎? – fxm