2

私のphpファイルには次のものがあります。

$arr[] = array("status"=>0);
echo json_encode($arr);

私のJavaScriptには、次のものがあります。

$(document).ready(function(){

    initialize(); 
    $("#searchbutton").click(function(){

    var usrinput = $("#userinput").val();

    $.get(
        "searchpageajaxjson.php",
        {searchterm: usrinput},
        function(data){
            searchreturned(data);
        },
        "json"
    ); 
    });
 });


function searchreturned(data){
   console.log(data); 
   var parsed = jQuery.parseJSON(data);
   console.log(parsed); 
   //for (var i = 0; i < parsed.length; i++) {  
    //            alert(parsed[i]);  
    //     } 
   //    
}

console.log(data)は[object Obejct]を示し、console.log(parsed)はnullを示します

どこが間違っているのですか?

追加するために編集:

alert(data.status)は未定義を示しています。

2番目の編集:

私が受けたすべての助けに本当に感謝しています。すべてのコメントで受けたすべての助けのために、私は本当にこの問題から先に進むことができるだけなので、答えを選ぶのは難しいです。私はいつも私のような初心者を助けるためにあなたの時間を与えるあなたの親切な人々に畏敬の念を抱いています。

4

2 に答える 2

2

あなたは再び呼び出すことになっていjQuery.parseJSONないdata"json"として使用したので、jQueryはすでにそれを処理しますdataType

于 2012-07-22T23:44:02.793 に答える
1

1.呼び出す理由はありません。jQuery.parseJSONまたは、ここで渡したパラメーター$.parseJSONにより、jQueryはそれがすでにJSONオブジェクトであることを認識しているためです。"json"

$.get('source', {param:param}, function(data){ /*work with data*/ }, "json");

2.console.log(data);がnullでなく、次[Object Object]のように、そのオブジェクトのプロパティを確認しようとしている場合。

例:オブジェクトを探索する:

ここに画像の説明を入力してください

例:オブジェクトから値を出力します:

//this will output "Horror"
data.genre

これがお役に立てば幸いです。

于 2012-07-22T23:51:15.143 に答える