我可以动态地将“select”控件附加到DOM,在将它附加到DOM之后,我想要更改最后一个“select”的html内容(动态添加的最新“select”),但它失败了......
(我无法在param_html中设置选项值,因为我应该稍后使用ajax请求来设置它们。)
<script>
$(function(){
var param_html = '<select class="params"></select>';
$("input[value='+']").click(function(){
$('#parameters').append(param_html);
$('.params :last').html('<option>aaa</option><option>keyword in profile</option><option>last tweet</option>');
});
});
</script>
<div id="parameters">
<input type="button" value="+">
<select class="params"><option>1</option><option>2</option></select>
</div>
任何建议都表示赞赏。
答案 0 :(得分:6)
取出params和:last
之间的空格$('.params:last').html('<option>aaa</option><option>keyword in profile</option><option>last tweet</option>');
答案 1 :(得分:1)
您的内容似乎是在加载完dom后添加的。
答案 2 :(得分:0)
你的CSS选择器应该是$('.params:last-child')
或$('.params:last')
,我认为那里不允许使用空格键。
也没有人可以使用您创建的对象:
$(function(){
var param_html = '<select class="params"></select>';
$("input[value='+']").click(function(){
$('#parameters').append(param_html);
$(param_html).html('<option>aaa</option><option>keyword in profile</option><option>last tweet</option>');
});
});
如果您将来要使用AJAX,那么相同的想法将起作用,而不是将对象使用重新选择到您创建的对象。