关于以下代码行,我遇到了问题:
$(document).ready(function () {
getJsonDataToSelect("ajax/json/assi.hotel.json", '#assi_hotel', 'hotelName');
});
function getJsonDataToSelect(url, id, key){
$.ajax({
dataType: "json",
url: url,
success: function(hotels){
$.each(hotels, function(){
$(id).append('<option value="'+ this.key +'">'+ this.key +'</option>')
});
}
});
}
json数据如下所示:
[
{"hotelName":"hotel1"},
{"hotelName":"hotel2"},
{"hotelName":"hotel3"}
]
我需要使用“key”作为“hotelName”(arrayname)。提前,没有可能以不同的方式命名它......它是如此命名的。显然这不起作用,因为“key”在Json-File中没有定义为arrayname。
我的问题是,有没有办法,JQuery使用parametervalue而不是parametername本身。
提前致谢!
答案 0 :(得分:0)
没有jQuery方式,但肯定是原生的javascript方式。您可以使用Object.keys
返回传入的对象的键作为参数。
hotels.forEach(function(obj){
console.log(Object.keys(obj)); // array of keys of obj
});
答案 1 :(得分:0)
改变两次this.key ---&gt;这[键]。
感谢Martin Ernst。