jqm listview onclick仍然跟随href

时间:2012-11-30 12:25:13

标签: javascript jquery listview cordova jquery-mobile

我有一个Jquery Mobile列表视图,每个列表项中的链接旁边都有一个删除按钮。当我单击删除按钮时,onclick事件将触发,删除功能会运行,但随后也会跟踪href,即使该按钮未嵌套在href中。我在按钮上添加了返回false,看看是否会有所帮助,但事实并非如此!帮助!

这是我用来动态填充列表的代码....

$('#roomsList').append('<li><img src="img/delete-2x.png" class="delete" onClick="deleteRoom(\'' + currentRow.roomtype + '\',\'' + propertyID + '\'); return false;" /><a href="inventory.html?roomtype='+currentRow.roomtype+'&id='+propertyID+'" id="'+currentRow.roomtype+'">' + currentRow.roomtype + '</a></li>');

2 个答案:

答案 0 :(得分:0)

  

将a和li都附加到父级[将它们放在同一级别]。通过这种方式,它们应该可以轻松工作。

答案 1 :(得分:0)

应该没有任何问题。请看这个例子:http://jsfiddle.net/Gajotres/WEmNG/。我两天前为其他人创建了它,但它类似于你的问题。而不是删除按钮我在列表视图上显示自定义复选框。如果您单击列表视图,它将转发到另一个页面,但如果您单击自定义复选框,它将仅激活chechbox上的事件。

使用我的示例在列表视图上创建一个工作删除按钮。

这是我在自定义复选框上使用的事件示例:

$('.checkBoxLeft').bind('click', function(e) {
   if($(this).find('input[type="checkbox"]').is(':checked')){
       $(this).removeClass('checked').addClass('not-checked');
       $(this).find('input[type="checkbox"]').attr('checked' , false);
   } else {
       $(this).removeClass('not-checked').addClass('checked');             
       $(this).find('input[type="checkbox"]').attr('checked' , true);
   }
});