单击"保存"按钮时,我想确保日期是否存在。
我尝试使用返回 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();