如何在 jQuery 中停止函数保存



单击"保存"按钮时,我想确保日期是否存在。

我尝试使用返回 false 、e.stopPropagation()e.stopImmediatePropagation()并且这些都无法停止执行saveEvent。正如您在我的例子中看到的,按钮保存将始终执行。我想停止停止SaveEvent.你能帮忙吗?

$('#btnSave').click(function () {
var StartDate = $('#txtStart').val();
$.ajax({
type: "POST",
url: "/Home/Checkdate",
data: '{StartDate: "' + StartDate + '" }',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
var message = $("#message");
if (response) {
//Email available.
message.css("color", "green");
message.html(" date is not exist ");
}
else {
message.css("color", "red");
message.html("date existe ");
alert('date existe');
return;
}
}
});

var data = {
EventID: $('#hdEventID').val(),
EventTitle: $('#txtSubject').val().trim(),
StartDate: $('#txtStart').val().trim(),
EndDate: $('#chkIsFullDay').is(':checked') ? null : $('#txtEnd').val().trim(),
EventDescription: $('#txtDescription').val(),
ThemeColor: $('#ddThemeColor').val(),
IsFullDay: $('#chkIsFullDay').is(':checked')
}
SaveEvent(data);

// call function for submit data to the server
})

对 SaveEvent 的调用需要位于"成功"回调内的if (response) {块内。

这似乎是您验证日期状态的地方,因此这也应该是您运行"保存"命令的地方。

添加如下preventDefault以防止元素的默认行为。

将上面的 2 行更改为这样。

$(document).on('click','#btnSave',function (e) {
e.preventDefault();

相关内容

  • 没有找到相关文章

最新更新