【发布时间】:2021-02-04 16:38:13
【问题描述】:
当我单击选择选项时,结果是所有数据都被合并到一行中。我想更改它,以便数据从选择选项中填充每一行。
关于我应该更改或添加哪些代码有什么建议吗?是来自循环还是我需要为选择选项创建一个动态 id?
var json = {
"Food": [{
"id": "1",
"name": "Fried Rice",
"price": "10.000"
}, {
"id": "2",
"name": "Fried Noodle",
"price": "9.000"
}, {
"id": "3",
"name": "Pancake",
"price": "8.500"
}, {
"id": "4",
"name": "French Fries",
"price": "7.500"
}],
"Drink": [{
"id": "1",
"name": "Cola",
"price": "4.600"
}, {
"id": "2",
"name": "Orange Juice",
"price": "5.400"
}, {
"id": "3",
"name": "Mineral Water",
"price": "3.500"
}, {
"id": "4",
"name": "Coffee",
"price": "5.800"
}]
};
var str = '<select>';
for (var i = 0; i < json.Food.length; i++) {
str += '<option value="' + json.Food[i].id + '"+ class="food">' + json.Food[i].name + '</option> ';
}
str += '</select>';
$(".food").html(str)
var str = '<select>';
for (var i = 0; i < json.Food.length; i++) {
str += '<option value="' + json.Drink[i].id + '"+ class="drink">' + json.Drink[i].name + '</option>';
}
str += '</select>';
$(".drink").html(str)
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-giJF6kkoqNQ00vy+HMDP7azOuL0xtbfIcaT9wjKHr8RbDVddVHyTfAAsrekwKmP1" crossorigin="anonymous">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
<div class="container">
<div class="container-fluid text-center">
<h2 style="font-size:70px; font-family:Lucida Console;">MENU</h2>
<div class="row">
<div class="col-md-6">
<select class="form-select form-select-lg mb-3" aria-label=".form-select-lg example">
<option selected>Open Food Menu</option>
<option value="1" class="food"></option>
</select>
</div>
<div class="col-md-6">
<select class="form-select form-select-lg mb-3" aria-label=".form-select-lg example">
<option selected>Open Drink Menu</option>
<option value="1" class="drink"></option>
</select>
</div>
</div>
</div>
</div>
【问题讨论】:
-
你可以使用 vanilla js 吗?
标签: javascript html jquery json bootstrap-5