1

我正在使用 jquery selectmenu 插件来显示样式精美的选择菜单。我有三个选择菜单,所有选项都隐藏在最后两个菜单中,当您从菜单一中选择一个选项时,它会在菜单二中显示相关选项。同样的事情发生在菜单二到三。如果没有选择菜单插件,这可以正常工作。Unfotunately with the select menu plugin 它消失了并且不再出现。

演示http://jsfiddle.net/GXtpC/1525/

$(function(){            
    $('select').selectmenu({
        style:'popup'
    });

    $('.select1').on('change', function () {
        var parentId = $(this).children(":selected").attr("id");
        $('.all-opt').hide();
        $('.' + parentId).show();
    });
    $('.select2').on('change', function () {
        var parentIdReg = $(this).children(":selected").attr("data-id");
        $('.select3-option').hide();
        $('.' + parentIdReg).show();
    });

}); 

完全没有 jQuery 选择菜单插件

演示http://jsfiddle.net/GXtpC/1526/

4

3 回答 3

0

使用以下代码:

// init
var mySelect = $( "#my-select" ).selectmenu();

// hide
mySelect.selectmenu('close');
mySelect.widget().hide();

// show
mySelect.widget().show();
于 2015-01-27T21:45:45.280 回答
0

我对selectmenu()小部件不熟悉,但我可以指出一些需要注意的地方。稍微修改一下你的代码,似乎在调用 之后selectmenu(),它使得调用hide()不可能:

$(function(){            
    $('.select1').selectmenu();
    $('.select3').selectmenu();

    $('.select2').hide();    <---- hidden
    $('.select3').hide();    <---- not hidden
/*
    $('.select1').on('change', function () {
       ...
       ...
    */
});  

此外,表格中的一个轻微错字导致

SELECT OPTION 1
SELECT OPTION 1
SELECT OPTION 3

我想应该是1,2和3?

于 2015-01-27T09:27:09.603 回答
0

我有类似的问题,我解决了调用

$( "#original_select_id" ).selectmenu( "refresh" );

我有基于其他选择的选择删除或附加选择选项的代码。IE 在选择选项的显示/隐藏方法方面存在问题,这就是为什么我改用删除/追加方法的原因(也许这是提供的代码解决此问题所必需的)。

在原始选择元素的更改完成后执行此代码,jQuery UI 选择菜单“重新初始化”自身并且仅包含动态添加/未删除的选项。

于 2016-01-26T16:44:20.723 回答