我遇到了一个问题,我将select转换为<ul><li/></ul>
格式。
现在我将所有选项,它们的值,html和类转换为li。
这意味着li获取值属性等。
手头的问题 当选项具有整数(当前低于4位数)并转换它们时,它可以正常工作。但我有另一个选择选项有guids作为值。当我尝试变换时,所有的值变为零,即值=“0”。
有没有人有任何想法?
我的代码完全符合:
//Extract listbox
$preferenceListBox.children().each(function () {
var $liToAdd = $liTemplate.clone();
console.log($(this).val());
$liToAdd.html($(this).html()).prop("value",$(this).val()).prop("disabled", $(this).prop("disabled"));
if ($(this).is("[disabled='disabled']") || $(this).is("[selected='selected']")) {
$liToAdd.addClass("disabled");
}
if ($(this).filter(":selected") > 0) {
$liToAdd.prop("disabled", "disabled");
}
$selectionList.append($liToAdd);
});
更新
转换后的列表html示例:
<ul class="selectionList"><li value="0" class="ui-draggable ui-selectable">-Select-<b class="preferenceButton">+</b></li><li value="0" class="ui-draggable ui-selectable">Canberra Central<b class="preferenceButton">+</b></li>...</ul>
它是从这个选择中创建的:
<select class="preferenceListBox noSelectItem" id="areaCodeList" multiple="multiple" name="areaCodeList" size="7" style="display: none; "><option disabled="disabled" class="disabled">-Select-</option><option value="24631a28-901d-4156-b6f6-2d2b3c10c9ec">Canberra Central</option>...</select>
答案 0 :(得分:1)
嗯...
http://www.w3schools.com/tags/att_li_value.asp
http://www.w3schools.com/tags/tag_li.asp
HTML 4.01中不推荐使用
<li>
的value属性。value属性设置列表项的值。以下列表 项目将从该数字增加。
该值必须是数字,并且只能在有序列表中使用 (
<ol>
)。强>HTML 4.01严格/不支持
<li>
的value属性 XHTML 1.0 Strict DTD。
ps:您是否考虑使用id
或class
属性而不是value
?