使用jquery-ajax-json从php页面接收数组响应的最佳方法是什么

时间:2015-10-10 17:30:41

标签: php jquery json ajax

我想做什么: 我在页面“add.php”中有一个html表单,其中包含一些jquery代码,它使用serialize()函数将用户输入发送到“save.php”。 现在,在“save.php”文件成功或失败后,我想在调用者页面“add.php”中接收一个数组响应,并使用jquery在页面的某个位置显示。

到目前为止我尝试了什么: 我可以将POST数据发送到“save.php”并使用serialize()函数和jquery ajax从它接收单个响应。 但我无法使用xml或json从“save.php”接收数组响应。

$(document).ready(function(){ 
  $('.notification').hide();

  $('.submit').click(function(){
    var check=0;
    console.log($('#requestForm').serialize());

    if(check == 0){
      $.ajax({
        url:  "save.php",
        type:"POST",
        dataType:"json",
        data: $('#requestForm').serialize(),
        statusCode: {404: function() {alert('page not found');}
                    },
        success: function(data){
          alert("works"+data);
          // alert(data["alert_type"]);
        }
      });
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form role="form" id="requestForm" method="post" action="save.php">
   <input type="text" name="txt_code" id="txt_code" placeholder="Customer Code"/>
   <input type="text" name="txt_name" id="txt_name" placeholder="Customer Name"/>
   <input type="text" name="txt_searchname" id="txt_searchname" class="form-control" placeholder="Search Name (24)"/>
  <button type="button" class="submit">Send Request</button>
</form>

请帮我找到解决方案。提前感谢任何建议。

1 个答案:

答案 0 :(得分:0)

为什么不从你的php函数返回json?

http://php.net/manual/fr/function.json-encode.php

<?php
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);

echo json_encode($arr);
?>

//The above example will output:

{"a":1,"b":2,"c":3,"d":4,"e":5}