我的目标是使用jquery将选择(多个)转换为无序列表。 为此,我认为我可以使用此线程中的一段代码:https://stackoverflow.com/a/7336612/10132321
我正在尝试将ID为“ mylist”的select转换为ul。运行js后,第一个列表框应该看起来像第二个带有复选框的列表框,但没有任何反应。我在做错什么吗?
https://jsfiddle.net/tomsx/t307vebr/
$(function() {
var id = "mylist";
$('#' + id).after("<ul id='mylist2' />")
.children("option").each(function() {
$("#mylist2").append("<li>" + $(this).text() + "</li>");
})
.end().remove();
$('#mylist2').attr("id", id);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="mylist" multiple size="6">
<option value="0">First</option>
<option value="1">Second</option>
<option value="2">Second</option>
<option value="3">Third</option>
<option value="4">Fourth</option>
<option value="5">Fifth</option>
</select>
答案 0 :(得分:1)
$(function(){
var id = "mylist";
$('#'+id).after("<ul id='mylist2' />")
.children("option").each(function() {
$("#mylist2").append("<li><label><input type=checkbox />"+$(this).text()+"<label></li>");
})
.end().remove();
$('#mylist2').attr("id",id);
});