0

我有一个应用插件选择菜单的选择器。工作正常,但是我想使用 livequery 来处理隐藏元素(如果在应用 selectmenu 时隐藏了一个元素,它就会将其杀死)。

这有效:

$('select:visible').filter('[multiple!=multiple]').selectmenu();

但是我似乎无法对实时查询使用相同的语法:

$('select:visible').filter('[multiple!=multiple]').livequery(function() {
    $(this).selectmenu();
});

这实际上并没有过滤出多重选择的元素。我不得不这样做:

$('select:visible').livequery(function() {
    if($(this).attr('multiple') != 'multiple')
        $(this).selectmenu();
});

有人知道为什么吗?我尝试了各种变化,例如:

$('select:visible:not([multiple=multiple])')...

等等同样的问题。

4

2 回答 2

0

试试下面的代码

$('select:visible:not([multiple])');
于 2011-07-22T23:49:55.290 回答
0

您需要使用[multiple=true]代替[multiple=multiple][multiple=false]代替[multiple!=multiple]

于 2011-07-22T23:55:00.677 回答