动态设置的 jQuery UI Selectmenu 值不会更改可见的选定值

2024-01-02

我正在使用 jQuery UI Selectmenu,并且在设置呈现的选定值时遇到问题。它似乎更改了底层选择中的选定选项,但选择菜单不显示更改。我正在调用 .selectmenu('refresh', true) 但没有任何反应。

这是一个例子:http://jsfiddle.net/sociobit/wYBeL/ http://jsfiddle.net/sociobit/wYBeL/


Hiya So demo(解决方案)http://jsfiddle.net/wYBeL/43/ http://jsfiddle.net/wYBeL/43/而不是刷新尝试.selectmenu("value", selectedValue);或(黑客)http://jsfiddle.net/wYBeL/36/ http://jsfiddle.net/wYBeL/36/(保留您选择的弹出设置:)无论适合您什么

所以我使用 firebug 检查了 DOM,似乎 selectmenu() 样式:弹出窗口添加了额外的样式层,但 #sel2 值设置正确,您只需要使用正确的值设置正确的元素。我认为当你有一个ajax填充下拉菜单并刷新页面的一部分时,刷新就会起作用。

嗯,你可以尝试查看 API 以获取更多详细信息,如果你不需要 selectmenu 弹出窗口,那么没有它,这将像 @jiimw 所说的那样工作:(但是样式变得很奇怪):http://jsfiddle.net/wYBeL/35/ http://jsfiddle.net/wYBeL/35/;如果这没有帮助,请告诉我,我将删除帖子。

额外链接:http://wiki.jqueryui.com/w/page/12138056/Selectmenu http://wiki.jqueryui.com/w/page/12138056/Selectmenu

希望两者都有帮助。

JQuery 代码在这里

$(function() {

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

    $('#chksame').click(function() {
        if ($(this).is(':checked')) {
            var selectedValue = $('#sel1').val();
            $('#sel2').val(selectedValue);

            $('#sel2').selectmenu("value", selectedValue);

        }

    });
});​

** OR **

$(function() {

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

        $('#chksame').click(function() {
            if ($(this).is(':checked')) {
                var selectedValue = $('#sel1').val();
                $('#sel2').val(selectedValue);

                // set the right element with the select value
                $('#sel2-button span').text($("#sel2 option[value='" + selectedValue +"']").text());

                $('#sel2').selectmenu('refresh', true);

            }

        });
    });​

Cheers

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

动态设置的 jQuery UI Selectmenu 值不会更改可见的选定值 的相关文章

随机推荐