读书人

问一个Jquery的Ajax异步处理的有关问题

发布时间: 2012-03-29 12:53:12 作者: rapoo

问一个Jquery的Ajax异步处理的问题

JScript code
$("#form").submit(function() {    var word = $('.word').attr('value');    $.get('/analysis/searchclick',{word:word, type:1}, function() {            $('#form').submit();    });});


JScript code
var returnFlag = 0;$("#form").submit(function() {    var word = $('.word').attr('value');    $.get('/analysis/searchclick',{word:word, type:1}, function() {            returnFlag = 1;            $('#form').submit();        });    if(returnFlag != 1) {        return false;    }});


其实上面两段代码,我是想实现同一个功能:当提交id为“form”的表单时,触发一个Ajax事件,然后在Ajax完成后,再出发提交表单的操作。

最开始我用的第一段代码,但发现每次还没等Ajax发送完成就跳转了(因为跳转的页面没有接到传来的值),因此我暂且认为是Ajax的异步处理操作,即它只是发送了,但不管发送是否完成,都继续往下执行,所以触发表单提交就走到了发送Ajax完成之前。

但后来又有一段代码让我很纳闷:
JScript code
<a href="xxx.php" class="testa" name="国贸">链接</a>$(".testa").click(function(){    var keyword = $(this).attr('name');    $.get('/analysis/searchclick',{word:keyword, type:1}, function() {});})


这段代码,当我点击这个链接的时候,它就是等Ajax发送完成,并成功返回的时候,再执行跳转操作,为什么这次Ajax没有异步操作呢?


[解决办法]
表格提交很特殊。。。
[解决办法]

如需要阅读该回复,请登录或注册CSDN!

读书人网 >JavaScript

热点推荐