我有一些jQuery代码可以将选定的值从一个列表框复制到另一个列表框:
$(adPerson + " option:selected").each(function(){
$(toNames).append($(this).clone());
});
我正在尝试确保没有空行添加到目标列表框中,所以我尝试了这个:
$(adPerson + " option:selected").each(function(){
if($(this).text != "")
{
$(toNames).append($(this).clone());
}
});
上面的代码不起作用 - 我认为是因为使用了.each。
有什么想法吗?
德里克
答案 0 :(得分:2)
首先,如果您想以此方式进行测试,则需要使用text()
代替text
。它是一种功能,而不是财产。
但是,您只需使用:not(:empty)
jQuery选择器:
$(adPerson + " option:selected:not(:empty)").each(function(){
$(toNames).append($(this).clone());
});
您可以使用以下内容进一步简化:
$(toNames).append( $(adPerson + " option:selected:not(:empty)").clone() );