上記の投稿された例を引用して、これは私が入れ子になったリストに戻るボタンを追加する方法です。
私がしていたことは、特定の条件が存在するときに親リストビュー()を追加してから、特定のデータが利用可能なときにのみ子リストビュー()を追加することでした。
状況によっては、0-5の子リストビューを持つことができます。例えば
:
self.cont.append($("<ul id='addtlInfo' />"));
self.loadMeds(self.cont.attr("id"));
self.loadContacts(self.cont.attr("id"));
self.loadDX(self.cont.attr("id"));
$.mobile.page.prototype.options.addBackBtn = true;
自己。contは単に私のjQueryオブジェクトを追加するページのDIVです。 .loadXXX法の
一人一人が基本的には次のようになります。
self.loadMeds = function (client_id) {
if (!$("#clientMeds").exists()) {
cw.ds.executeSQL("SELECT * FROM CLIENTS_MEDS WHERE client_id = ?", [client_id], self.appendMeds);
};
};
self.appendMeds = function (tx, r) {
var $meds = $("<li>Medications</li>");
var $medlist = $("<ul />");
var rs, meds, med = "";
var m = 0;
if (r.rows.length > 0) {
for (var i = 0; i < r.rows.length; i++) {
rs = r.rows.item(i);
meds = rs.data.split("\n");
for (var j = 0; j < meds.length; j++) {
med = med + meds[j] + "<br />";
if (m == 2) {
$medlist.append($("<li>" + med + "</li>"));
med = "";
m = -1;
};
m++;
};
};
};
$meds.append($medlist);
var $m = $("<ul id='clientMeds' />").append($meds);
$("#addtlInfo").append($("<li />").append($m));
$("#clientMeds").listview();
};
あなたが見ることができるように、私はそれぞれの子のリストを追加したら、私はリストビュー()メソッドを呼び出します。これにより、独立した子リストビューを持つ親リストビューが作成されました。
親リストビュー()内のアイテムをクリックした場合、予想通りに子アイテムを表示できましたが、親リストビューに戻る方法はありませんでした。これはiPad上で自分のコードをテストしているときには本当に問題になりました(DroidのネイティブBACKボタンがないため、実際の戻るボタンがあります)。
最初の修正を試みました:data-add-back-btn = "true"これは期待どおりに機能しませんでした。
2番目の修正。
<script type="text/javascript">
$(document).bind("mobileinit", function() {
$.mobile.page.prototype.options.addBackBtn = true;
});
</script>
ページ幅が広いので、私には優雅に見えませんでした。私は、実際にはネストされたリストビューになる予定だった場合にのみ、この設定を有効にするようにしていました。期待どおりに機能したときにうれしく驚いていました。
私は今あなたができるとは思わないが、私は間違っているかもしれない。しかし、もし私がそうでないなら、あなたはこれに関するバグ報告を提出するべきです - これは良い機能があるように思えます。 –
それを見つけました。 jqueryモバイルスクリプトをロードする前に、自動的にすべてのページにボタンを追加するように設定することができます。 http://jquerymobile.com/blog/2011/06/20/jquery-mobile-beta-1-released/ – levi
levi - 私が読んだところから、これはどこでも可能になると思われます - あなたはそれぞれを上書きしていますか?ページ?リストの最初のページで上書きすると、後続のサブリストに表示されますか? –