我希望从数组中添加和删除项目到列表视图中,这与购物车类似,但是我正在使用列表视图来做到这一点。
我尝试使用append(),但是它将双重添加项目,并且删除功能不起作用
$('#deleteme').on('tap', function () {
console.log('delete button is tapped')
$(this).parent().remove();
$('#cartlist').listview('refresh');});
$("#Addtocart").click(function () {
console.log("addtocart button is tapped");
var add = "";
var title = arr[gindex].title;
var price = arr[gindex].price;
var Oprice = arr[gindex].Oprice;
var img = arr[gindex].imgSmall;
var Expiry = arr[gindex].Expiry;
add = add + "<li><a class='ui-icon-delete' id='deteleme'>
<img src=img/"
+ img + "><h3>" + title + "</h3><p><b>" + price + '</b><br>'
+ '<strike>' + Oprice + '</strike>' + '<br>' + "Expiry: " + Expiry
+ "</p></a></li>";
$('#cartlist').append(add);
console.log("item is added");
$('#cartlist').listview('refresh');
console.log(add);});
我希望一个接一个地添加项目,我可以删除我想要的任何项目
答案 0 :(得分:0)
您动态添加ID为deleteme
的li,并附加了点击处理程序,但该项目不存在。因此,您需要使用委托
$('body').on('tap','#deleteme', function () {
...
})
最好使用最接近的deleteme
父级而不是$('body')
以获得更好的性能