如何将 JSON 对象数据的值填充到选择框中?
How do I populate values of an JSON object data into a selectbox?
when using this code selectbox option value data populate as UNDEFINED..
var obj = jQuery.parseJSON('['+<?= $customers_json; ?>+']') ;
var myJSON = JSON.stringify(obj);
for (var i = 0; i < myJSON.length; i++)
{
html_code += '<option value="'+myJSON[id].toString()+'">'+myJSON.toString()+'</option>';
}
$sql2 = "SELECT id,name FROM customers";
$customerResult = $conn->query($sql2);
//$customers123 = $customerResult->fetch_assoc();
while($r = mysqli_fetch_assoc($customerResult)) {
$rows[] = $r;
}
$customers123=json_encode($rows);
$customers_json = $customers123;
你的解决方案是使用for和in。这是一种遍历对象的好方法:
var obj = jQuery.parseJSON('['+<?= $customers_json; ?>+']');
obj = obj[0][0]; // to account for position within object
for (key in obj)
{
html_code += '<option value="'+key+'">'+obj[key]+'</option>';
}
请记住,您可能需要在添加更多选项之前删除之前的所有选项:o)
var myJSON = jQuery.parseJSON('['+"[{\"id\":\"2\",\"name\":\"sooraj\"},{\"id\":\"4\",\"name\":\"ravi pillai\"},{\"id\":\"5\",\"name\":\"jasil\"},{\"id\":\"6\",\"name\":\"athul\"},{\"id\":\"7\",\"name\":\"dheeraj123\"}]"+']') ;
myJSON =myJSON[0];
let html_code ='';
for (var i = 0; i < myJSON.length; i++)
{
html_code += '<option value="'+myJSON[i]['id']+'">'+myJSON[i]['name']+'</option>';
}
console.log(html_code);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
For 循环将是
for (var i = 0; i < myJSON.length; i++)
{
html_code += '<option value="'+myJSON[i]['id'].toString()+'">'+myJSON[i]['name'].toString()+'</option>';
}
when using this code selectbox option value data populate as UNDEFINED..
var obj = jQuery.parseJSON('['+<?= $customers_json; ?>+']') ;
var myJSON = JSON.stringify(obj);
for (var i = 0; i < myJSON.length; i++)
{
html_code += '<option value="'+myJSON[id].toString()+'">'+myJSON.toString()+'</option>';
}
$sql2 = "SELECT id,name FROM customers";
$customerResult = $conn->query($sql2);
//$customers123 = $customerResult->fetch_assoc();
while($r = mysqli_fetch_assoc($customerResult)) {
$rows[] = $r;
}
$customers123=json_encode($rows);
$customers_json = $customers123;
你的解决方案是使用for和in。这是一种遍历对象的好方法:
var obj = jQuery.parseJSON('['+<?= $customers_json; ?>+']');
obj = obj[0][0]; // to account for position within object
for (key in obj)
{
html_code += '<option value="'+key+'">'+obj[key]+'</option>';
}
请记住,您可能需要在添加更多选项之前删除之前的所有选项:o)
var myJSON = jQuery.parseJSON('['+"[{\"id\":\"2\",\"name\":\"sooraj\"},{\"id\":\"4\",\"name\":\"ravi pillai\"},{\"id\":\"5\",\"name\":\"jasil\"},{\"id\":\"6\",\"name\":\"athul\"},{\"id\":\"7\",\"name\":\"dheeraj123\"}]"+']') ;
myJSON =myJSON[0];
let html_code ='';
for (var i = 0; i < myJSON.length; i++)
{
html_code += '<option value="'+myJSON[i]['id']+'">'+myJSON[i]['name']+'</option>';
}
console.log(html_code);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
For 循环将是
for (var i = 0; i < myJSON.length; i++)
{
html_code += '<option value="'+myJSON[i]['id'].toString()+'">'+myJSON[i]['name'].toString()+'</option>';
}