0

jQuery Mobileの複数選択でクリックイベントをトリガーするにはどうすればよいですか?

(X)閉じるボタンが簡単ではないと感じたため、選択オプションに閉じるボタンを追加しようとしています。このトピックはここ(http://stackoverflow.com/questions/10004719/jquery-mobile-multi-select-box)で説明されており、答えは次のとおりです。

オプションとして[閉じる]を追加し、クリックされた場合にダイアログを閉じるメソッドをトリガーすることができます

クリックイベントをトリガーする方法については説明していません。私は以下を試しました:

$("#selectmenu").change(function() {
alert('Changed!!');});

$(document).delegate('.ui-selectmenu-screen', 'click', function () {
alert('changed');
}).delegate('.ui-selectmenu .ui-btn-inner', 'click', function (event) {
alert('changed2');});

$('#selectmenu').on('change', function () {
alert('changed');});

$('#selectmenu').live('change', function () {
alert('changed');});

$('#pageName').on('click', '.ui-selectmenu-list > li', function () {
alert('changed');});

$("#selectmenu").live( "click", function(event, ui) {
alert('changed');});

$("#selectmenu").bind( "click", function(event, ui) {
alert('changed');});
4

1 に答える 1

0

ここにある $.selectmenu() メソッドを使用して、次のchangeようにイベントにバインドします。

HTML

<div data-role="fieldcontain">
    <select name="selectmenu" id="selectmenu" multiple="multiple">
        <option value="value1">Value 1</option>
        <option value="value2">Value 2</option>
        <option value="value3">Value 3</option>
        <option value="close">Close</option>
    </select>
</div>

選択メニューを閉じる

$(document).delegate('#selectmenu', 'change', function(){
    var str = $('#selectmenu option:selected').val(); // Get Value of Option

    if (str == 'close'){
        $('#selectmenu').selectmenu('close');
    }
});

値を追加

function addValues($el){
    var total = 0;
    $('option', $el).each(function(){
        var value = parseInt($(this).val());
            value = (isNaN(value-0)) ? 0 : parseInt(value); // Defaults Value to 0 if NaN

        total += value;
    });
    return total;
}

値を追加するための JSFiddle

これが役立つことを願っています!

于 2012-09-04T22:02:06.053 に答える