簡體   English   中英

將 PHP 數組發送到 Javascript

[英]Send PHP Array To Javascript

///////更新 - 我的代碼中已經包含了 jquery 庫,所以如果 jquery 比 javascript 更容易,請告訴我。

好的。 這里有很多問題正在向 php 發送一個 JavaScript 數組,但只有 1 個與我的相同。 不幸的是,我不明白答案。

所以,目前我在 php 中有一個關聯數組。 然后我使用了這段代碼,

echo json_encode($this->_inputErrors);

我實際上不知道我為什么要使用它,只是在其他類似的例子中提到了很多。 然后將數據發送到 javascript(通過 ajax),如果我執行此代碼,

alert(requestText);

我得到一長串文字。 正如我想象的那樣,我應該。

那么我如何在 javascript 中將文本返回到數組中?

或者有沒有更好的方法來做到這一點?

非常感謝您的時間,

克里斯

var o = JSON.parse( requestText );

包括這個( https://github.com/douglascrockford/JSON-js/blob/master/json2.js )以支持舊瀏覽器。

requestText是一個 JSON 字符串。 您需要將字符串解析為 object。

您可以使用JSON.parse將字符串轉換為 JSON。

var obj = JSON.parse(requestText);

如果您的瀏覽器沒有JSON ,請包括以下內容:

https://github.com/douglascrockford/JSON-js/blob/master/json2.js

前幾天,我遇到了同樣的問題。 檢查我的解決方案:)

陣列.html

$(document).ready(function(e){

    //This array is where I'll receive the PHParray
    var js_array=new Array();

    $("#btn").click(function(e){
             $.ajax({
                type:    'POST',
                 url:     'vector.php',
                 cache:   false,
                 success: function(data){

                    js_array=data;
                   //I use this "for" to print each array item into a div called "data".
                    for(var i=0;i<js_array.length;i++){
                         $("#data").append("<p>"+js_array[i]+"</p>");
                    }

                 },
                 dataType: 'json'
             });                  
    });                    

});

矢量.php

<?php

$array = array(1,2,3,4,5,6);

/*As you, I use "json_encode" to serialize the array
echo json_encode($array);

?>

我希望它可以幫助(:

您需要將返回類型設置為JSON

或者如果使用 jQuery,您可以使用 jQuery 的方法getJSON()從 Z572D1B4E421E8AD679

在 Javascript 中轉換該長文本行的最簡單方法是使用 eval:

alert(eval('(' + requestText + ')'));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM