2

jquery mobile 1.4.2 webapp に問題があります。列トグル ボタンを使用する 2 つのテーブルを含むページがあります。これらの各ボタンを独自のプレースホルダーに移動して、水平スクロールを可能にしたいと考えています。

テーブルが1つあるときにこれが機能していますが、列トグルボタンのテーブルIDを指定して、正しいテーブルのボタンを移動する方法がわかりません。

<div id="colUnit"></div>

$(document).on("pageinit", "#contractDetails", function () {
   $(".ui-table-columntoggle-btn").appendTo("#colUnit");
}); 

正しいボタンが移動されるようにjquery内でテーブルIDを指定する方法はありますか<div id="colUnit"></div>

現在、両方のボタン (各テーブルから 1 つ) を配置します。<div id="colUnit"></div>

4

1 に答える 1

1

column-toggleボタンは、テーブルの兄弟であり、それらの前に配置されます。.prev()別の場所に移動するために使用します。

$("#mytable1, #mytable2")
    .prev(".ui-table-columntoggle-btn")
    .appendTo("#colUnit");

アップデート

それらをコントロールグループに追加して、テキストを変更することもできます。

<div id="colUnit" data-role="controlgroup" data-type="horizontal"></div>

ボタンをcontrolgroupに移動します。

$("#mytable1, #mytable2")
    .prev(".ui-table-columntoggle-btn")
    .each(function () {
    var text = $.mobile.path.parseUrl($(this)
        .prop("href"))
        .hash.substring(1);
    $(this)
        .text(text.split("-")[0])
        .appendTo($("#colUnit")
        .controlgroup("container"));
});

$("#colUnit").controlgroup("refresh");

デモ

于 2014-08-27T11:09:52.733 に答える