从json编码获取信息

时间:2017-03-20 07:50:40

标签: javascript php html json ajax

main.html中

<!DOCTYPE html>
<html>
<head>
    <title></title>



    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
    <script src="jquery-3.1.1.min.js"></script>
    <script src="jsfile.js"></script>
    </head>
    <body>
            <button onclick="cart(0)"> hi </button>
            <p id="disp"></p>
    </body>
    </html>

jsfile.js

function cart(id1)
{

    var id=id1;
    //alert("enterd "+id);
    document.getElementById("disp").innerHTML ="hi";
    if (window.jQuery) {
    // jQuery is available.

    // Print the jQuery version, e.g. "1.0.0":
    //alert(window.jQuery.fn.jquery);
}
        $.ajax({
        url:"add.php ",
        type:"POST",

        data:{
          item_id: id,
        },
        success:function(response) {

         document.getElementById("disp").innerHTML =response.value1;
       },
       error:function(){
        alert("error");
       }

      });

}

add.php

<?php
    if(isset($_POST['item_id'])){
    //if(count($_POST)>0)
        echo json_encode(array("value1" => "hello", "value2" => "hi"));

    }
?>

收集从add.php到jsfile.js的信息...我无法从json数组中获取信息..我试图通过respnse.value1获取信息。但它返回我未定义..可能是错误??

1 个答案:

答案 0 :(得分:0)

在使用之前,您必须解析JSON。将您的成功功能更改为 -

success:function(response) {
     var res = JSON.parse(response);
     document.getElementById("disp").innerHTML = res.value1;
},