如何防止在点击弹出的警告消息时自动回发。我使用jQuery尝试了return false;。有人能帮我吗--我的错误是什么?
下面我验证弹出文本框字段:
function validatepopup() {
var isValid = true;
$('#txtUserIDAU,#txtUserNameAU,#txtPasswordAU,#txtConfimPasswordAU').each(function () {
if ($.trim($(this).val()) == '') {
isValid = false;
$(this).css({
"border": "1px solid red",
"background": "#FFCECE"
});
}
else {
$(this).css({
"border": "",
"background": ""
});
}
});
if (isValid == false) {
alert('Please Enter Required Information !');
return false;
}
else {
SaveRecord();
return true;
}
}AJAX函数:我已经创建了一个新的函数来保存弹出窗口的详细信息,但是在点击警报消息页面时,页面会回发,所以我的模式弹出窗口会在回发时隐藏
function SaveRecord() {
if (checkListBox.GetSelectedValues().length != 0) {
var PlantCode = {};
PlantCode = checkListBox.GetSelectedItems();
var ArrArr = $.map(PlantCode, function (n, i) {
return [n.value];
});
var params = {
'UserID': $('#txtUserIDAU').val(), 'UserName': $('#txtUserNameAU').val(),
'Password': $('#txtPasswordAU').val(), 'Status': $('input[name="rdnStatus"]:checked').val(),
'CreatedBy': $('#txtUserIDAU').val(),
'LocationCode': ArrArr
};
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
data: JSON.stringify(params),
url: 'MobileUser_Login.aspx/SaveRecord',
dataType: "json",
async: false,
success: function (data) {
if (!data.error) {
alert('Saved successfully !!');
}
else {
alert(data.error);
}
}
});
}
else {
alert('Please select atlist one Plant'); //here post back happening
ev.preventDefault();
return false;
}
}按钮单击事件:
<asp:Button ID="btnSave" runat="server" ClientIDMode="Static"
OnClientClick="return validatepopup();" Text="Save" CssClass="buttonsuccess" />发布于 2021-03-16 19:28:34
您可以按如下方式修改您的function validatepopup() {
else
{
SaveRecord();
return true;
}至
else
{
SaveRecord();
return false;
}编辑1
当您从函数SaveRecord();返回值时,请使用如下所示的返回值
else
{
return SaveRecord();
}https://stackoverflow.com/questions/66653720
复制相似问题