1

選択の横にあるオブジェクトを見つける必要があります。これらのオブジェクトは動的に作成されるため、要素のタイプを返す必要があります。この例では、ラベルは選択の横にありますが、入力、imgなどである可能性があります。スライダーイベントをオフにすることは正常に機能しますが、セレクターを特定することはできません。

私が試してみました:

$( "#popupPadded" ).bind({
    popupafterclose: function (event, ui) {
        $(".flip_mini").val('off').slider('refresh');

        var $label = $(this).next();
        alert($label.text());

    }
});

これがulです...

<ul data-role="listview" data-inset="true" >
        <li>
        <select class="flip_mini" id="flip-mini" data-role="slider" data-mini="true">
            <option value="off">close</option>
            <option value="on">open</option>
        </select>
        <label>First:</label>
        </li>

        <li>
        <select class="flip_mini" data-role="slider" data-mini="true">
            <option value="off">close</option>
            <option value="on">open</option>
        </select>
        <label>Last:</label>
        </li>

    </ul>
4

1 に答える 1

3

Labelnextそのため、メソッドがselect with class flip_mini呼び出されるオブジェクトを持つ$(this)を使用する代わりに、それを使用します。

ライブデモ

var $label = $(".flip_mini").next();

2つの選択があるので、このようなインデックスを使用して必要なものを取得できます

ライブデモ

var $label1 = $(".flip_mini").eq(0).next();

var $label2 = $(".flip_mini").eq(1).next();
于 2012-10-06T00:30:32.657 に答える