我正在尝试使用jQuery将选择列表附加到div表中,完成此操作后,我想选择列表中的特定选项,我正在尝试这样的事情:
// my hidden option list
<div style="display:none;">
<select class="option_list">
<option value="male">Male</option>
<option value="female">Female</option>
<option value="none">Unknown</option>
</select>
</div>
<div id="my_table">
<div>
<div>John</div>
<div>25</div>
<div></div>
</div>
<div>
<div>Emy</div>
<div>22</div>
<div></div>
</div>
<div>
<div>Sarah</div>
<div>28</div>
<div></div>
</div>
</div>
// $(".option_list") is hidden in HTML page, I clone and append it to my div table row
$(".option_list")
.clone ()
.appendTo ("#my_table > div > div:last-child")
.attr ("name", "a_dynamic_name_for_php_form")
.find ("option[value=none]").selected = true;
答案 0 :(得分:4)
试试这个:
$(".option_list")
.clone ()
.appendTo ("#my_table > div > div:last-child")
.attr ("name", "a_dynamic_name_for_php_form")
.find ("option[value=none]").attr("selected", "true");
注意最后一行的变化。
答案 1 :(得分:0)
你应该写.val('none')
。 val
方法会找到<option>
value
。 (或者,那不是那个文本)
答案 2 :(得分:-1)
为什么要克隆它?尽可能简单,我将隐藏的html部分定义为字符串并简单地附加它们:
var add = '<select>' +
' <option value="one">one</option>' +
' <option two ... '+
'</select>';
$(something).appendTo(add);
有点脏,但是...... :) - (你甚至可以用asp / php定义那些隐藏的部分,所以你不必每行写一次)
修改:已经回答了......