javascript ajax不在同一页面上发送数组到php

时间:2016-09-16 14:56:50

标签: javascript php jquery ajax

我对这个话题进行了很多讨论,但我尝试的每个解决方案都有一些错误......

阅读了一些帖子后我试图创建一个简单的jquery + ajax调用+ php的演示,但它不是通过post方法在同一页面上检索数组

我的剧本

var stuff ={'key1':'value1','key2':'value2'};

    $("#btn").click(function(e) {

    e.preventDefault();
  $.ajax({
    type    : 'POST',
    url     : '3.php',
    data    : {result:JSON.stringify(stuff)},
    success : function(response) {
    console.log(response);            
    }    
});

});

PHP

if(isset($_POST['result'])) {
$data    = $_POST["result"];
$data    = json_decode("$data", true);
echo "key1 : ".$data["key1"];

}

编辑:成功功能很好,它给了我回复,但我没有通过帖子获取数据......

但我既没有得到任何错误,也没有任何数据,我如何追踪我做错了什么?

1 个答案:

答案 0 :(得分:1)

<?php

if(isset($_POST['result'])) {
    $data    = $_POST["result"];
    $data    = json_decode("$data", true);
    echo "key1 : ".$data["key1"];
    die();
}

?>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>

<script>
var stuff ={'key1':'value1','key2':'value2'};


$( document ).ready(function() {

    $("#btn").click(function(e) {

    e.preventDefault();
  $.ajax({
    type    : 'POST',
    url     : '3.php',
    data    : {result:JSON.stringify(stuff)},
    success : function(response) {
        $('#result').html(response);
    }    
});

});

});

</script>



<input type='button' id='btn' value='RUNN'>


<div id='result'></div>