在jQuery mobile中绑定动态添加的元素

时间:2013-12-06 18:49:50

标签: javascript html jquery-mobile

我正在尝试在动态添加后删除一些列表元素。

这个想法是你可以更新列表,然后在更新之后你可以点击一个列表项来删除它。

HTML

<p>Test</p>
<ul data-role="listview">
    <li>Acura</li>
    <li>Audi</li>
    <li>BMW</li>
    <li>Cadillac</li>
    <li>Ferrari</li>
</ul>
<br>
<input type="button" value="Update" id="button">

使用Javascript:

var new_list =
    '<ul data-role="listview">' +
    '<li class="delete">Dog</li>' +
    '<li class="delete">Cat</li>' +
    '</ul>';

$('#button').off('click').on('click', function () {
    $('ul').remove();
    $('p').after(new_list);
    $('ul').listview();
});

$('.delete').off('click').on('click', function () {
    $( this ).remove();
});

Jsfiddle Link

1 个答案:

答案 0 :(得分:1)

将事件绑定到动态添加项的正确方法如下:

$(document).on("event", ".selector", function () {
  $(this).remove();
  $('ul_selector').listview('refresh');
});