0
我有一個分爲幾個部分的窗體。當用戶點擊「繼續」時,我有一個jquery腳本來檢查是否填寫了所有必填字段。如果沒有,則會出現一個包含「是」和「否」的警告和按鈕的框(實際上它們是<a>
標籤)。我將一個onclick事件附加到觸發函數的「yes」按鈕上。該功能起作用,但在地址欄(website.com/page#)中出現#,我猜測是因爲我的代碼中的event.preventDefault();
無法正常工作。如何讓event.preventDefault在動態函數上工作
這裏是添加onclick事件功能:
function checkSection (event, check, goTo) {
event.preventDefault();
var emptyFields = "0";
$("#ia"+check+"Div .check").each(function() {
var val = $(this).val();
if (val == "") {
emptyFields++;
}
});
if (emptyFields >= 1) {
$(".mask").show();
$("#warningBox").show();
$(document).on("click", "#yesBtn", function() {
var x = window['save'+check];
x(event, goTo);
$("#warningBox").hide();
$(".mask").hide();
});
} else {
var x = window['save'+check];
x(event, goTo);
$("#warningBox").hide();
}
}
這是我加入的事件標籤:
<div class="medBtn short">
<div class="btnTbl">
<a href="#" id="yesBtn">Yes</a>
</div>
</div>
我最後調用函數是這樣的:
function saveContact(event, val) {
event.preventDefault();
//Do Stuff - This is the function where event.preventDefault(); isn't working
}
就像我說的,該功能仍然有效,所以如果它不是我可以解決的問題,那我很好。我只是不喜歡在地址欄中輸入#。
那裏面工作的默認。謝謝! –