doujiang1913 2014-05-20 21:09
浏览 24
已采纳

请求响应不起作用

Here is my JSON function:

function createjson(){
  var json='{"jsondata":[[';
  $("#kup td").each(function(){
  if($(this).html()!="")
  {
    json+= parseInt($(this).html())+",";
    if($(this).index()%5==0 && $(this).index()!=0){
      json=json.substring(0,json.length-1);
      json+="],["
    }                       
  }             
 });
json=json.substring(0,json.length-3);
json+="]]}";
console.log(json); //-> works fine.
return json;
};

The AJAX part:

$("#button").click(function(){
  $.ajax({
    type:"POST",
    url:"x.php",
    data: createjson(),
    contentType: "application/json",
dataType: "json",
    success: function(result) {
        alert("done"); //->works
    }
  });           
}); 

The PHP part:

<?php
   header('Content-type: application/json');
   echo "<pre>";
   echo    $_POST['jsondata'];
   echo "</pre>";
?>

So, the "alert" works but when check the response in console, it returns only "<pre></pre>"

any solution?

  • 写回答

1条回答 默认 最新

  • duanchongchu5177 2014-05-20 21:36
    关注

    The data option can contain either a query string of the form key1=value1&key2=value2, or an object of the form {key1: 'value1', key2: 'value2'}. If the latter form is used, the data is converted into a query string using jQuery.param() before it is sent. This processing can be circumvented by setting processData to false

    . from jquery API doc

    I didn't tested it but should give the intense how to change structure, give it a try:

    function createdata(){
      var data;
      $("#kup td").each(function(){
        if($(this).html()!="")
        {
          data.push( parseInt( $(this).html() ) );
          //...                    
        }             
      });
    console.log(data);
    return data;
    };
    
    $("#button").click(function(){
      var data = createdata();
      $.ajax({
        type:"POST",
        url:"x.php",
        data: {createjson:data},
        contentType: "application/json",
        dataType: "json",
        success: function(result) {
            alert("done"); //->works
        }
      });           
    }); 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题
  • ¥20 云服务Linux系统TCP-MSS值修改?
  • ¥20 关于#单片机#的问题:项目:使用模拟iic与ov2640通讯环境:F407问题:读取的ID号总是0xff,自己调了调发现在读从机数据时,SDA线上并未有信号变化(语言-c语言)