发布时间:2013-10-24 11:41:07来源:阅读(847)
在实际开发中,某些地方需要使用ajax来验证数据的合法性,比如:用户名是否存在,密码是否正确等。
但由于Ajax默认情况下是采用异步传输执行的,所以无法通过在ajax的success方法中改变JQuery的全局变量来记录ajax的执行情况,从而阻止表单提交。
在使用ajax时,可通设置async:false,来实际同步传输执行,那么JQuery会等待ajax执行完毕才继续向下执行。那么就可以通过在ajax的success方法中改变JQuery的全局变量来阻止表单提交,示例代码如下:
01 | var result = true ; |
02 |
03 |
$.ajax({ |
04 |
type: “GET”, |
05 |
url: “……”, |
06 |
dataType: “json”, |
07 |
async: false , // 同步传输执行 |
08 |
success: function (data) { |
09 |
if (……) { |
10 |
result = false ; |
11 |
} |
12 |
} |
13 |
}); |
14 |
15 |
return result; |
关键字: JQuery
1528
1153
1130
1594
813
1503
460
1447
1255
933
9183
5754
5265
4887
4329
4043
3169
3092
3087
3047