• JQUERY 的AJAX只执行一次问题


     $.ajax({
                url: 'Ajax/OrderBy.aspx',
                data: {AppIds: sortedAppids},
                dataType: 'xml',
                type: 'POST',
                success: function(xml)
                {
                   alert("排序成功!");

                }
            });

    ajax在同步交互时,第一次提交正常,再第二次提交如果和上次提交的url地址相同时将不进行提交,会用上次的返回值。这样处理也许是ext别有良苦用心,但是,如果遇到每次必须提交时,例如一次提交后台的数据已经被修改了,再次提交返回的结果其实是不一样的,这样就需要特殊处理了。

    方法一:GET方式加参数

    原代码:

    1. var conn = Ext.lib.Ajax.getConnectionObject().conn;   
    2.         conn.open("get", HOST+'/OrgUserAction_checkPassword.action?id='+id+'&passwordOld='+checkValue,false);   
    3.         conn.send(null);   
    4. //      alert(conn.responseText);  

    处理后

    1. var conn = Ext.lib.Ajax.getConnectionObject().conn;   
    2.         conn.open("get", HOST+'/OrgUserAction_checkPassword.action?id='+id+'&passwordOld='+checkValue+'&temp='+new Date(),false);   
    3.         conn.send(null);   
    4. //      alert(conn.responseText);  

    添加了一个临时参数temp=new Date();

    这样保证了每次提交的url是不同的,从而达到了每次都会提交的效果。

    方法二:
    把get 改成post就可以了type: 'POST',

     

    注意改成 post 方式之后  在后台要使用  Request.Form[""] 接收参数 

    www.jiankangzj.com
  • 相关阅读:
    计算机视觉
    深度学习2
    pytorch
    Django笔记
    深度学习
    numpy&pandas
    信息安全与密码技术
    Win10 alt+f4默认关机修改
    (转)Spring Boot 解决跨域问题的 3 种方案
    用 alibaba 的 fastjson 将 list 或 map 转为 json 字符串
  • 原文地址:https://www.cnblogs.com/gaohb/p/2813148.html
Copyright © 2020-2023  润新知