別のページに存在する別のliをクリックしてliを削除する際に問題があります..そして、li idの削除はlocalStorage変数に存在します..
同じページに 2 つの div があります。最初のliコードは
<div data-role="page" id="wishListPage" data-add-back-btn="true">
<div data-role="header" data-position="fixed">
<header id="mainHeader" align="center">
<a href="#"><img src="images/logoName.png" /> </a>
</header>
</div>
<div data-role="content" data-theme="a" id="wishProducts">
<ul id="wishList" data-role="listview"></ul>
</div>
</div>
li は、値がデータベースから取得される属性を設定しますrs.rows.item(i).id
$("#wishList").append('<li id="'+rs.rows.item(i).id+'"><a href="index.html#removeProductDialogPage" data-role="button" data-rel="dialog" data-transition="slide" data-ajax="false" onClick=saveValuesInLocalStorage("'+rs.rows.item(i).id+'","'+rs.rows.item(i).productName+'","'+rs.rows.item(i).imageName+'","'+rs.rows.item(i).vendorImageName+'","'+rs.rows.item(i).fixedPrice+'","'+rs.rows.item(i).finalPrice+'","'+rs.rows.item(i).authorName+'","'+rs.rows.item(i).sharingUrl+'");>' +
'<img src='+rs.rows.item(i).imageName+' id="itemImage"/>'+
'<span id="dataName"><h4>'+pName+'</h4></span>' +
'<p><span id="dataAuthorName">'+aName+'</span></p>' +
'<p><span id="itemRsPrice">Rs. </span><span id="itemStrikePrice"><strike>'+rs.rows.item(i).fixedPrice+'</strike></span> <span id="itemPrice">'+rs.rows.item(i).finalPrice+'</p></span>'+'<img src='+rs.rows.item(i).vendorImageName+' id="itemSite"/></a></li>');
}
$("#wishList").listview("refresh");
ここで WishList は ul.. の ID であり、localStorage コードのストアは..
function saveValuesInLocalStorage(productUrl, productName , productImageName , vendorImage , fixedPrice, finalPrice, authorName,sharingUrl){
localStorage.sharingUrl = sharingUrl;
localStorage.productUrl = productUrl;
localStorage.productName = productName;
localStorage.imageName = productImageName;
localStorage.vendorImage = vendorImage;
localStorage.fixedPrice = fixedPrice;
localStorage.finalPrice = finalPrice;
localStorage.authorName = authorName;
}
今、IDを持つliを削除したいlocalStorage.productUrl
ダイアログページは次のとおりです。
<div data-role="content" data-theme="a">
<ul name="options" id="options" data-role="listview">
<li>
<a href="#" data-theme="a" data-ajax="false" onClick=" removeInfoDatabase()">
<p><span id="itemName"><h4>Remove from wish List</h4></span></p>
</a>
</li>
<li>
<a href="javascript:void(0);" data-theme="a" data-ajax="false" onclick="openWebLink()">
<p><span id="itemName"><h4>Go to Store</h4></span></p>
</a>
</li>
</ul>
</div>
次のコードは phonegap SQLite コードを示しています。removeInfoDatabase() 関数は..
function removeInfoDatabase (){
db.transaction(removeElement, removeError, removeSuccess);
}
function removeError(err){
console.log("Error processing SQL: "+err.code);
alert("couldn't remove from wish list");
}
function removeSuccess(){
var elem =document.getElementById(localStorage.productUrl);
elem.parentNode.removeChild(elem);
// $("#"+localStorage.producturl).remove();
// var mm = $("#"+localStorage.producturl).html();
// alert(""+mm);
$("#wishList").listview("refresh");
alert("item is removed successfully");
history.back();
}
function removeElement(tx){
tx.executeSql('CREATE TABLE IF NOT EXISTS itemDetail (id unique, productName , imageName, vendorImageName , fixedPrice , finalPrice , authorName , sharingUrl)');
tx.executeSql('DELETE from itemDetail where id="'+localStorage.productUrl+'"');
}
[ウィッシュリストから削除]をクリックした後、ウィッシュリストを削除する方法を教えてください..どうぞよろしくお願いします..