2017-06-06 12 views
-2

にPHPの配列とポストキー+のvauleを取得し、ありがとうございました。 EDIT:トップにPHPを動かすはまだ任意のものを印刷していません。JavaScriptを私はコーディングに新たなんだと私はなぜこれがそう、私は学ぶことができます説明してください 動作していない見当がつかない体

 <?php 
      //create array 
      $someArray = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43"); 
      //encode array 
      $someJSON = json_encode($someArray); 
      //pritn array 
     ?> 

<!DOCTYPE html> 
<html> 
    <head> 
     <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
     <script> 
      $(document).ready(function(){ 
       var array = "<?PHP echo $someJSON?>"; 
       var arrayDecode = jQuery.parseJSON(array); 
       $.each(arrayDecode, function(key, value){ 
        $('body').append(key + value + "<br><br>"); 
       }); 
      }); 
     </script> 
    </head> 
    <body> 
    </body> 
</html> 
+0

あなたはそれを印刷した後、あなたはそれがPHPは、本体内にある必要はありません – JiFus

+0

任意の値を出力しないように、あなたは非常に先頭に移動することができ、配列を初期化。 – AbraCadaver

+0

JiFus:ドキュメントのロード後にready()を使用して関数を利用可能にする – MacGruber

答えて

1

お試しください。 あなたはJSスクリプトで使用する前に、PHPの変数を宣言する必要があります。 そうでない変数は任意の値を持っていないと、それはエラーを返します。

<!DOCTYPE html> 
<html> 
<head> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
    <?php 
    //create array 
    $someArray = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43"); 
    //encode array 
    $someJSON = json_encode($someArray); 
    ?> 
<script> 
    $(document).ready(function(){ 
    var array = '<?php echo $someJSON; ?>'; 
    arrayDecode = jQuery.parseJSON(array); 
    $.each(arrayDecode, function(key, value){ 
     $('body').append(key + value + "<br><br>"); 
    }); 
    }); 
</script> 
</head> 
<body> 


</body> 
</html> 
+0

PHPとjQueryがロードされますが、ドキュメントが完全に読み込まれるまでコードは実行されませんか?私は$ .ready()を意味します。ロードが完了するまで待っていますか? – MacGruber

関連する問題

 関連する問題