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
}
就像我说的,该功能仍然有效,所以如果它不是我可以解决的问题,那我很好。我只是不喜欢在地址栏中输入#。
那里面工作的默认。谢谢! –