我正在尝试使用jquery从数据库获取值到下拉列表。但是下拉列表中没有任何显示。 这里的代码
getlist.php
<?php
$conn =mysqli_connect("localhost", "root", "", "project");
$sql = "SELECT * FROM catd";
$result = mysqli_query($conn, $sql);
$scat_arr = array();
while( $row = mysqli_fetch_array($result) )
{
$catid = $row['cid'];
$catname = $row['catname'];
$scat_arr[] = array("cid" => $catid, "catname" => $catname);
}
echo json_encode($scat_arr);
?>
catdet.php
这是我要检索值的地方。
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
<form method="post" enctype="multipart/form-data" align="center">
Subategory Name : <input type="text" name="scname"><br><br>
Category Name : <select id="catn"> </select><br><br>
Subategory description : <input type="text" name="scdes"><br><br>
<input type="file" name="scimg" id="file"><br><br>
<input type="submit" name="submit" value="Submit">
</form>
<script>
$(document).ready(function(){
$.getJSON("getlist.php", function(return_data){
$.each(return_data.data, function(key,value){
$("#catn").append("<option value=" + value.cid +">"+value.catname+"</option>");
});
});
});
</script>
答案 0 :(得分:0)
尝试这个脚本,我刚刚更改了foreach部分
<script>
$(document).ready(function(){
$.getJSON("getlist.php", function(return_data){
// <edited part>
return_data.forEach(function(e,i){
$('#catn').append('<option value= "'+e.cid+'">'+e.catname+'</option>');
});
// </edited part>
});
});
</script>