注释掉 dataType:"json"
alert(s.a+'  '+s.b); 改成 alert(data);1.php
<?php
print_r($_POST);
exit;用此改动进行调试

解决方案 »

  1.   


    返回数据没问题,
    $arr = $_REQUEST;  
    $vnameid =$arr['username'];
    $vtele =$arr['telephone'];
    我的意思是$vnameid 获得不到post数据
      

  2.   

    $vnameid =$arr['username'];取不到值?
      

  3.   

    嗯,取不到值。
    如果a.html中使用url: '1.php?'+params,
    就可以取到值,这是怎么回事?
      

  4.   

    你的ajax参数dataType:"json",传递的却是serialize序列化的数据。
    所以应该去掉dataType:"json"。
      

  5.   


    a.html
    var params=$("#form1").serialize();
    $.ajax({
        type: "post",
    contentType: "application/text",
    data:params,
            async: false,
    timeout: 30000,
            url: '1.php',
            success: function(data){
                    //处理data数据
    alert(data);
            },
    error: function(x, e) {
                       // alert(x.readyState);
    alert(e);
                    }
    });
    -----------------------------------
    1.php
    <?php
    $arr = $_REQUEST;  
    $vnameid =$arr['username'];
    $vtele =$arr['telephone'];
    echo $vnameid;
    ?>还是获取不到post值
      

  6.   

    contentType: "application/text",
    这个去掉吧。有这个MIME ?
      

  7.   

    删去 contentType: "application/text",
      

  8.   

    ok,去掉contentType: "application/text"就好了