0

json、jquery、および ajax を使用して、多次元配列を .php ファイルに戻しています。私の目標は基本的に、ドロップダウン ボックス (id=project) に複数のエントリを入力することです。コードの一部を次に示します。

$("#turninId").change(function() {

        var user_id = $("#turninId").val();

        $.ajax ( {
          url:"send_input.php",
          type: "POST",
          dataType: "json",
          data:{id_selection: user_id},
          success:function(response) {

            for (var i=0; i<response.proj.length; i++) {
              $("#exp").html(response.proj[i]);
              $("#project").html(response.proj[i]); } });

     });

send_input.php (バックエンド) で、データベースにクエリを実行し、その情報を配列に送信します。次に、json_encode を使用します。

$query="SELECT project FROM main";
$results = $db->query($query);
while ($row_id = $results->fetchArray()) {
       $proj_option[] = "<option value=\"".$row_id['project']."\">".$row_id['project']."</option>\n";
           $pselected=$row_id['project'];
}
$output = array( "proj" => "$proj_option");
echo json_encode($output);

私の問題は、これが文字列「配列」を返すことです。

たとえば、次のようにするとresponse.proj[0]、「A」が返されます。

何を与える?このエラーについて何人かの人々が質問をしているのを見てきましたが、明確な解決策はありません。何か助けはありますか?

4

1 に答える 1

1

これは$proj_option、引用符で囲んで文字列にキャストしているためです。引用符を削除するだけで、配列が取得されます。

于 2012-07-31T16:35:43.933 に答える