我需要使用JQuery
在select标签内创建选项标签这是选择标记:
<select id="tickets-room" style="height: 20px; width:200px; display: inline-block; margin-top:30px;" onchange="refreshRooms(this.value);">
</select>
每个选项标签都需要一个ID,如1,2,3,4
每个选项标签都应该接收“resp [] .key”作为文本。
我不知道它是否有意义,但我不知道如何解释它,这是我需要的一些元素的代码。 resp.key是我需要的名称作为选项标签内的文本,resp.value是我需要放在select标签之外的按钮上的URL。
function refreshRooms(city){
$.ajax('/services/tickets/<%= movieId %>?city=' + city).done(
function(resp){
alert(resp.length);
console.log(resp[0].key + " " + resp[0].value);
}
);
}
答案 0 :(得分:2)
function refreshRooms(city){
$.ajax('/services/tickets/<%= movieId %>?city=' + city).done(
function(resp){
var sel = $("#tickets-room");
for (var i = 0; i < resp.length; i++) {
sel.append('<option value="' + resp[i].key + '">' + resp[i].value + '</option>');
}
}
);
}
答案 1 :(得分:1)
function refreshRooms(city){
var jqTickers = $('#tickets-room');
$.ajax('/services/tickets/<%= movieId %>?city=' + city)
.done(function(resp){
$.each(resp, function() {
jqTickers.append($('<option value="' + this.key + '">' + this.value + '</option>')
});
});
});
}
答案 2 :(得分:1)
您可以使用以下语法创建新元素:
$('<option></option>');
然而,这个元素无处可去。它尚未添加到DOM中,因此不可见。您需要使用append
方法或appendTo
方法。它看起来像是:
$('#tickets-room').append( $('<option></option>').attr( {'id':i,'value':resp[i].key} ).html( resp[i].key ) );