-1

これでマルチセレクターを使用していますこの選択ボックス内でチェックボックスを使用していますこの選択の変更関数名getValue()を実行したい。私はこれを試しましたが、私にとってはうまくいきません

以下は私のコードです

 <html>
    <head>  
        <link rel="stylesheet" type="text/css" href="ui.dropdownchecklist.css" />
        <link rel="stylesheet" type="text/css" href="demo.css" />
        <script type="text/javascript" src="jquery.js"></script>
        <script type="text/javascript" src="ui.core.js"></script>
        <script type="text/javascript" src="ui.dropdownchecklist.js"></script>
        <script type="text/javascript">
            $(document).ready(function() {
               $("#cboLocation").dropdownchecklist({ firstItemChecksAll: true, maxDropHeight: 100 });
            });
            function getValue()
            {
                alert("hai");
                return false;
            }
        </script>
    </head>
    <body>

          <select name="cboLocation" class="width150" id="cboLocation" multiple="multiple" onChange="getValue()">
            <option>(all)</option>
            <option>Banana Nut</option>
            <option>Black Walnut</option>
            <option>Burgundy Cherry</option>
            <option>Butter Pecan</option>
            <option>Strawberry Cheesecake</option>
            <option>Turkish Coffee</option>
            <option>Vanilla</option>
          </select>

    </body>
    </html>

ありがとうございました

4

1 に答える 1

0

dropdownchecklist() によって無視されるため、選択メニューから onChange イベントを削除しました。Dropdownchecklist() は選択要素をdivsandに置き換えていますinputs。したがって、インライン スクリプトは呼び出されません。

次のコードは 1 つのことを行います。ユーザーがドロップダウン メニューの操作を終了すると、少なくとも 1 つのチェックボックスがオンになっている場合にのみ、警告メッセージ「ハイ」が表示されます。

<select name="cboLocation" class="width150" id="cboLocation" multiple="multiple">


$(document).ready(function() {
    $("#cboLocation").dropdownchecklist( {
        emptyText:'Select Something', // couldn't see the thing
        firstItemChecksAll: true,
        onComplete: function () { getValue() } //, alert('hello') }
    });

    function getValue() {
        if($('.ui-dropdownchecklist-item input:checked').length > 0) {
        alert('hai');
        }
    }       
});
于 2013-02-13T18:49:06.183 に答える