我试图在laravel中的依赖下拉列表中返回值。 api / dropdown返回json,一切正常。但是,返回的值不会在我的下拉列表中填充,而是显示[object Object]。
我错过了什么吗?
$(document).ready(function($){
$('#firstselect').change(function(){
$.get("{{ url('api/dropdown')}}", { option: $(this).val() },
function(data) {
$.each(data, function(key, value) {
$('#secondselect')
.append($("<option></option>")
.attr("value",key)
.text(value));
});
});
});
});
答案 0 :(得分:2)
$.each(data,function(index,value){
//Make sure value is the string you want to attach by putting a debugger here;
//Append code;
$('#secondselect').append($("<option></option>")
.attr("value",key)
.text(value));
});
在您发布的代码中
$(document).ready(function($){
$('#firstselect').change(function(){
$.get("{{ url('api/dropdown')}}", { option: $(this).val() },
function(data) {
$.each(data, function(key, value) {
/**********************************************/
//Evaluate and make sure value is string
debugger;
console.log(value);
/*************************************************/
$('#secondselect').append($("<option></option>")
.attr("value",key)
.text(value));
});
});
});
});
答案 1 :(得分:0)
使用$ .parseJSON从对象
中获取值 function(data) {
data = $.parseJSON(data);
...
答案 2 :(得分:0)
尝试FIDDLE
HTML
<select>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
jquery的
$(function () {
var $val = "Random";
$('select').append('<option value="'+$val+'">'+$val+'</option>');
});
希望它有所帮助..