リスト内の各レコードのボタンをクリックするとリストが表示されます。削除します。
私はこのHTML5をPhoneGapラッパーによるAnroaidで使用していますが、コンピューターではレコードが削除されていますが、Androidでは使用されていません。理由は何でしょうか?
ここに私のコード:
私のリスト:
<ul id="MyList" data-role="listview" data-divider-theme="b" data-inset="true">
</ul>
私はこの関数でリストを埋めます:
function FillBookMarkListByStation() {
var ul = $("#MyList");
for (var i = 0; i < Local.length; i++) {
var newLI = document.createElement("LI");
ul.appendChild(newLI);
newLI.innerHTML = '<a href="xxx.html" onclick="x();" > <p>...</p>' +
'<a id="btnClear' + i + '" data-role="button" data-icon="delete" data-theme="b"></a>
</a>';
$("#btnClear" + i).click(function () { Clear(ul, newLI); });
}
$('ul').listview('refresh');
}
機能クリア:
function Clear(List, Delete) {
//Remove from the list
List.removeChild(Delete);
//Remove from the local storage
for (var i = 0; i < Local.length; i++) {
//Checking is variable for check the data in the item
if (Local[i].Checking == Delete.dataset.checking) {
if (Local.length == 1)
Local= [];
else {
for (var j = i; j < Local.length - 1; j++) {
Local[i] = Local[i] + 1;
}
Local.length--;
}
Local["loc"] = JSON.stringify(Local);
}
}
}
コンピューターでは正常に動作しますが、
Androidの場合、画面からは削除されますが、loaclストレージからは削除されません。
リストの表示時に、削除されたアイテムがまだ表示されています。