$.post("ajax_save.php",{str:str,rid:rid,act:"trans",dept_name:dept_name,dept_id:dept_id},function(data){
if(data.substring(0,16)=="SUCCESSSAVEFIRST"){
alert("保存成功");location.reload();
}else if(data.substring(0,12)=="SUCCESSSAVED"){
alert("保存成功");location.reload();
}else
alert(data);
});
我使用post方法传数据到ajax_save.php,如果成功就返回相应的值,并alert相应的文字。我在本地测试的时候是可以使用的,但是我上传到服务器后,使用ie就无法正常传值了,但是也没有弹出任何的错误提示,是怎么回事了?ajaxiejavascript服务器

解决方案 »

  1.   

    php 端有没有到。是不是路径的问题哦。。
      

  2.   

    我上传到服务器以后用chrome可以正常传值的,不过IE就不行了,所以应该不是路径的问题吧
      

  3.   

    亲,如果是IE8以上的话,请:1.打开您的页面
    2.按下F12,打开开发者工具
    3.启动调试模式
    4.触发您的这段代码运行
    5.切换到网络选项卡,查看是否有这个异步的网络请求
    6.如果没有,请检查发起异步的代码是否真的执行了
    7.如果执行了,请查看服务器返回的报文有没有问题
    8.如果没有问题,请查看服务器返回的报头的Content-Type是否有问题对于第8点,如果您的后端有手动改动Content-Type报头的话,请检查字符间的空格有没有出错,因为我被这个坑过。
      

  4.   

    var dept_id=$("#dept_id").val();
    var dept_name=$("#dept  option:selected").text();
    $("#sub").click(function(){
    // var dept_id=$("#dept_id").val(); var str="";
    rid=$("#rid").val();
    alert(rid);
    if(dept_id==0){
    alert("请选择部门");return false;
    }
    $("input[name='"+rid+"']:checked").each(function(){
    str+=$(this).val()+",";
    }); if(str==""){
    alert("请选择节点");return false;
    } $.post("ajax_save.php",{str:str,rid:rid,act:"trans",dept_name:dept_name,dept_id:dept_id},function(data){
    if(data.substring(0,16)=="SUCCESSSAVEFIRST"){
    alert("保存成功");location.reload();
    }else if(data.substring(0,12)=="SUCCESSSAVED"){
    alert("保存成功");location.reload();
    }else
    alert(data);
    }); });我整段代码是这样的,报错是报rid=$("#rid").val();,对象不支持此属性或方法
      

  5.   

    确认有rid 为ID的元素,其次你的rid 如果存在看看.html() 可以获取不
      

  6.   

    rid我直接alert过了,可以获取值的,现在哪里我已经改为:var rid=$("#rid").val();,这里就没有报错了,但是$.post失效了,是怎么回事了?
      

  7.   

    是不是还有其他处理,你的rid 这个修改过或者文档未加在完成,你调用然后就找不到了。 出现js 错误你的$.post就失效了。
      

  8.   

    没有了,不过我把这个程序放到另外一个服务器上运行就可以了。我还想问一下用ajax的话服务器或者php的配置上有没有什么要求了?