我正在使用 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”。
是什么赋予了?我见过一些人对此错误有疑问,但没有明确的解决方案。有什么帮助吗?