12

jQuery UI Selectmenuを使用していますが、レンダリングされた選択値の設定に問題があります。基になるselectで選択されたオプションが変更されたようですが、selectmenuに変更が表示されません。.selectmenu('refresh'、true)を呼び出していますが、何も起こりません。

次に例を示します。http://jsfiddle.net/sociobit/wYBeL/

4

1 に答える 1

15

Hiya Soデモ(ソリューション)http://jsfiddle.net/wYBeL/43/更新の代わりに試してみてください.selectmenu("value", selectedValue);OR(ハック)http://jsfiddle.net/wYBeL/36/(あなたのselectpopup設定を維持します:)君

そこで、firebugを使用してDOMをチェックしたところ、selectmenu()スタイルのようです。ポップアップはスタイルの追加レイヤーを追加しますが、#sel2値は正しく設定されており、正しい値で適切な要素を設定する必要があります。ドロップダウンにajaxを入力し、ページの一部を更新するときに、更新が機能すると思います。

うーん、詳細についてはAPIを見てみることができます。selectmenuポップアップが必要ない場合は、それがなくても@jiimwが言ったように機能します:(バットスタイリングがおかしくなる):http://jsfiddle.net/ wYBeL / 35 / ;これで問題が解決しない場合は、投稿を削除しますのでお知らせください。

追加のリンク: 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);

        }

    });
});​

** また **

$(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);

            }

        });
    });​

乾杯

于 2012-03-29T00:55:37.863 に答える