发布时间:2013-10-24 11:41:07来源:阅读(958)
在实际开发中,某些地方需要使用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
1224
641
1420
1436
1776
1651
1660
1002
974
1413
9598
6001
5528
5122
4573
4276
3421
3340
3339
3274