我的脚本中有一个jquery函数
function test(){
$.ajax({
url: '/Customer/test' + '?clientId=' + val,
success: function (available) {
alert(available + 'success i am in the ajax');
if (available == 1) {
alert('no postback');
return false;
}
else if (available == 2) {
alert('no postback');
return false;
}
else {
alert('Ok,postback');
return true;
}
}
});
}
我称之为
onclick="test();"
按钮
问题是,在调用ajax调用之后,页面首先得到回发。 但是首先应该在posback之后调用ajax调用
答案 0 :(得分:3)
在ajax调用中使用 async:false
尝试以下代码,
var output = $.ajax({
type: "POST",
url: "/Customer/test",
async: false,
data: "clientId="+val
});
if (output == 1) {
alert('no postback');
return false;
}
else if (output == 2) {
alert('no postback');
return false;
}
else {
alert('Ok,postback');
return true;
} }
答案 1 :(得分:0)
尝试更改onclick:
onclick="javascript:return test();"
然后在其中返回false。