我正在通过ajax调用Web服务,然后它将在服务中为此方法返回布尔值。根据此布尔值的不同,我需要显示一个弹出窗口或继续重定向到新页面。我遇到的问题是找回价值。
这是我尝试过的:
var codeVal = false;
var isValidPartnerCode = false;
function CheckIfPartnerHasValidCode() {
var jsPartnerCode = $('#CustomerModel_PromotionalDiscountCode').val();
codeVal = $.ajax({
url: "/Service/CheckPartnerHasValidCode",
data: JSON.stringify({ PartnerCode: jsPartnerCode }),
dataType: "json",
type: "POST",
delay: 300,
contentType: "application/json; charset=utf-8",
dataFilter: function (data) { return data; },
success: function (data) {
response($.map(data, function (item) {
return {
value: item.Value
// html: item.Text,
};
isValidPartnerCode = item.Value;
}));
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
}
$("#btnContinue").on("click", function (e) {
var isError = false;
var partnerHasCode = $("input:radio[name='CustomerModel.Have_Promo_Code']:checked").val();
if (partnerHasCode === "Yes") {
CheckIfPartnerHasValidCode();
if (!isValidPartnerCode) {
partnerCodeInvalidError();
isError = true;
}
else {
//show popup
}
}
我的操作结果方法:
[HttpPost]
public ActionResult CheckPartnerHasValidCode(string partnercode)
{
var partnerCodeIsValid = false;
partnerCodeIsValid = new SAL().CheckPartnerHasValidCode(partnercode);
return Json(partnerCodeIsValid);
}
ActionResult根据所提交的内容返回true或false值。在JS中,我想将 isValidPartnerCode 设置为此值(真/假),以便在单击下一个按钮时检查状态。如何从那里返回值?