LÀM VIỆC DEMO http://jsfiddle.net/kasperfish/r7MN9/3/ (với jquery)
cars=new Array("Mercedes","Volvo","BMW","porche");
phones=new Array('Samsung','Nokia','Iphone');
populateSelect();
$(function() {
$('#cat').change(function(){
populateSelect();
});
});
function populateSelect(){
cat=$('#cat').val();
$('#item').html('');
if(cat=='car'){
cars.forEach(function(t) {
$('#item').append('<option>'+t+'</option>');
});
}
if(cat=='phone'){
phones.forEach(function(t) {
$('#item').append('<option>'+t+'</option>');
});
}
}
CẬP NHẬT: sử dụng eval() để có thể thêm càng nhiều mảng như bạn muốn. JSFIDDLE DEMO
cars=new Array("Mercedes","Volvo","BMW","porche");
phones=new Array('Samsung','Nokia','Iphone');
names=new Array('Kasper','Elke','Fred','Bobby','Frits');
colors=new Array('blue','green','yellow');
populateSelect();
$(function() {
$('#cat').change(function(){
populateSelect();
});
});
function populateSelect(){
cat=$('#cat').val();
$('#item').html('');
eval(cat).forEach(function(t) {
$('#item').append('<option>'+t+'</option>');
});
}
Nguồn
2013-09-26 23:17:27
Cảm ơn bạn rất nhiều vì đã giúp đỡ. – sapan
Nếu tôi muốn mảng đến từ dữ liệu MySQL thì sao? Bạn có thể giúp? Cảm ơn! – xjshiya
@xjshiya - có thể là quá muộn cho trường hợp cụ thể của bạn, nhưng như một câu trả lời chung: cách hiệu quả nhất là sử dụng một cuộc gọi ajax đến một phía máy chủ trang. Trang đó thực hiện truy vấn và trả về kết quả dưới dạng ajax hoặc xml, ví dụ, sau đó bạn sử dụng để điền vào trường này. –