王东校的Blog

JQUERY 的AJAX只执行一次问题

$.ajax({
            url: 'Ajax/OrderBy.aspx',
            data: {AppIds: sortedAppids},
            dataType: 'xml',
            type: 'POST',
            success: function(xml)
            {
               alert("排序成功!");
            }
        });
 
ajax在同步交互时,第一次提交正常,再第二次提交如果和上次提交的url地址相同时将不进行提交,会用上次的返回值。这样处理也许是ext别有良苦用心,但是,如果遇到每次必须提交时,例如一次提交后台的数据已经被修改了,再次提交返回的结果其实是不一样的,这样就需要特殊处理了。
方法一:GET方式加参数
原代码:
 
view plaincopy to clipboardprint?
    var conn = Ext.lib.Ajax.getConnectionObject().conn;   
            conn.open("get", HOST+'/OrgUserAction_checkPassword.action?id='+id+'&passwordOld='+checkValue,false);   
            conn.send(null);   
    //      alert(conn.responseText);  
 
 
处理后
 
view plaincopy to clipboardprint?
    var conn = Ext.lib.Ajax.getConnectionObject().conn;   
            conn.open("get", HOST+'/OrgUserAction_checkPassword.action?id='+id+'&passwordOld='+checkValue+'&temp='+new Date(),false);   
            conn.send(null);   
    //      alert(conn.responseText);  
 
 
添加了一个临时参数temp=new Date();
这样保证了每次提交的url是不同的,从而达到了每次都会提交的效果。
方法二:
把get 改成post就可以了type: 'POST',

posted on 2012-06-26 14:56 王东校 阅读(676) 评论(1)  编辑  收藏

Feedback

# re: JQUERY 的AJAX只执行一次问题[未登录] 2014-10-15 14:24 123

123  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问