我有一个填充下拉列表的方法(我没写过):
function populateDDListItems(ddlObj, dataToPopulate, showSelectOption) {
$(ddlObj).empty();
if (dataToPopulate.length > 1) {
$(ddlObj).append('<option value="Select" data-theme="a" selected>Select</option>');
}
if (dataToPopulate.length > 0) {
$.each(dataToPopulate, function (idx, val) {
$(ddlObj).append('<option value="' + val.value + '" data-theme="a">' + val.text + '</option>');
});
if (dataToPopulate.length == 1) {
$(ddlObj).val(dataToPopulate[0].value).attr("selected", "selected");
$(ddlObj).attr("readonly", "readonly");
}
}
}
我的所有下拉/选择HTML对象都应用了jQuery移动下拉列表:
除了从此方法生成的一个。我发现以下行是罪魁祸首:
$(ddlObj).empty();
如果我删除这一行,jQuery mobile本机菜单适用于它的内容。但是,删除此功能也会破坏功能,因为存在多个版本的列表填充。
为什么这个方法会删除jQuery移动本机菜单以及我有哪些替代选项?
答案 0 :(得分:0)
你可以.hide()它,你可以有一个隐藏的元素,你可以克隆到你使用的那个,然后可以删除该克隆。
通过这种方式,我使用标准Div集进行格式化,并且克隆继承了属性css等。然后可以更改克隆,包括.show(),然后在用完之后.empty()/。remove( )等等。