Tôi muốn tạo một menu thả xuống động mà người dùng chọn dựa trên giá trị của một lựa chọn khác. Tôi đã thử rất nhiều lần và thất bại. Tôi có mã như sau. Bất cứ ai cũng có thể giúp tôi tìm ra vấn đề là gì.Cách tải dữ liệu JSON bằng jQuery, PHP và MySQL
// mẫu:
<script type="text/javascript">
$(function(){
getSelectVal();
$("#grouptypes").change(function(){
getSelectVal();
});
});
function getSelectVal(){
$.getJSON('<?php echo url_for('group_utilization/GroupModification') ?>', {'grouptypes':$("#grouptypes").val()},function(data){
var groups = $("#groups");
$("option",groups).remove();
$.each(json,function(index,array){
var option = "<option value='"+array['id']+"'>"+array['title']+"</option>";
select.append(option);
});
});
}
</script>
GroupType: <select id="grouptypes">
<?php foreach($grouptypes as $type) : ?>
<?php echo "<option value='" . $type->name . "'>" .$type->name. "</option>"; ?>
<?php endforeach ?>
</select><br />
<br />Result:<span id="list-of-groups"></span>
<br />
Group: <select name="group" id="groups">
</select><br />
Một tập tin trả lại cơ sở dữ liệu giá trị trả về:
if(isset($_GET["grouptypes"])){
$grouptypes = $_GET["grouptypes"];
$query = "SELECT g.name FROM groups g INNER JOIN group_types gt ON(gt.id = g.group_type_id AND gt.name = ?)";
$groups = $db->getResultsForQuery($query, $grouptypes);
echo json_encode($groups);
}
Khi bạn nói bạn thất bại, ý của bạn là gì? Bạn có bất kỳ thông báo lỗi nào bạn có thể đăng không? – Crashspeeder
Có bất kỳ lỗi tập lệnh nào không? Bạn dường như đang đề cập đến một biến jinit '$ .each (json, function (index, array) {' –
Cũng như biến 'json', biến' select' không được khởi tạo trong mã bạn đã đăng – Jasper