通过javascript/ajax选择菜单
我正在从另一个php页面的ajax和JSON请求中检索数据。我使用json pasrse获取了两个数组字符串 JAVASCRIPT:通过javascript/ajax选择菜单,javascript,php,ajax,json,Javascript,Php,Ajax,Json,我正在从另一个php页面的ajax和JSON请求中检索数据。我使用json pasrse获取了两个数组字符串 JAVASCRIPT: if (xmlhttp.readyState==4 && xmlhttp.status==20 { var data = JSON.parse(xmlhttp.responseText); document.getElementById("myDiv").innerHTML=data.subject; document.getElemen
if (xmlhttp.readyState==4 && xmlhttp.status==20
{
var data = JSON.parse(xmlhttp.responseText);
document.getElementById("myDiv").innerHTML=data.subject;
document.getElementById("myDiv").innerHTML=data.scriptID;
}
PHP:
用于($i=0;$i$subject)
));
问题是,我得到了两个带有逗号的独立数组。但是,我想在当前表单中创建select菜单,方法是将$scriptID作为值传递,将$subject作为文本传递
谢谢。您可以按如下方式修改php:
$json = array();
foreach ($scriptscount as $sc) {
$json[] = array("script" => $sc['scriptID'], "subject" => $sc['subject']);
}
echo json_encode($json);
for($i=0;$i<$scriptscount;$i++){
$arr['script'][] = $currentscript[$i]['scriptID'];
$arr['subject'][] = $currentscript[$i]['subject'];
}
echo json_encode($arr);
for($i=0;$iThanks..javascript代码中将包含哪些内容来检索它?@user2696691迭代数组。每个数组元素都将是一个具有script
和subject
属性的对象。现在,我没有定义。以前,我有,echo json_encode(数组('script'=>script))
和var data=JSON.parse(xmlhttp.responseText);document.getElementById(“myDiv”).innerHTML=data.script;
您可以在浏览器控制台上检查JSON的内容。在生成selectbox的第一行之后使用console.log(data)
,然后在浏览器控制台中进行检查(可能使用firebug之类的检查器)。
for($i=0;$i<$scriptscount;$i++){
$arr['script'][] = $currentscript[$i]['scriptID'];
$arr['subject'][] = $currentscript[$i]['subject'];
}
echo json_encode($arr);
var data = JSON.parse(xmlhttp.responseText);
document.getElementById("mydiv").innerHTML= "<select>";
for(x in data.script)
{
document.getElementById("mydiv").innerHTML = document.getElementById("mydiv").innerHTML + "<option value="+data.script[x]+">"+data.subject[x]+"</option>";
}
document.getElementById("mydiv").innerHTML = document.getElementById("mydiv").innerHTML + "</select>";