MySql – 未在html中显示的JSON数据
我正在尝试从MySql创建一个下拉列表。
php成功从MySql中获取数据。 但我的问题是我的HTML页面的下拉列表中没有显示数据?
json_mysql_data2.php
header("Content-Type: application/json"); require_once("con.php"); $i=0; $jsonData = array(); foreach ($conn_db->query("SELECT customerID FROM customers WHERE furniture='33' ") as $result){ $i++; $jsonData["article".$i]=$result['customerID']; } echo json_encode($jsonData);
myJS.js
$(document).ready(function(){ var ddlist = document.getElementById("ddlist"); var hr = new XMLHttpRequest(); hr.open("GET", "json_mysql_data2.php", true); hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); hr.onreadystatechange = function() { if(hr.readyState == 4 && hr.status == 200) { var d = JSON.parse(hr.responseText); for(var o in d){ if(d[o].title){ ddlist.innerHTML += '<option value='+d[o].title+''; } } } } hr.send("null"); ddlist.innerHTML = "Loading Customer ID...."; });
HTML
Customer ID: SELECT STUDENT ID
你的innerHTML
是错误的。 你在开头有一个额外的 ,你错过了
的结束
。 您也没有选项中的任何文本,因此菜单项将全部为空白。
您还应该附加到而不是
。
hr.onreadystatechange = function() { if(hr.readyState == 4 && hr.status == 200) { var d = JSON.parse(hr.responseText); var empList = document.getElementById("EmpList"); for(var o in d){ if(d[o].title){ empList.innerHTML += ''; } } } }
ddlist.innerHTML += '
应该
ddlist.innerHTML += '';