加载附加信息后重新初始化jQuery

Reinitialize jQuery after loading additional information

本文关键字:初始化 jQuery 信息 加载      更新时间:2023-09-26

我有一个可以选择的项目列表,但是当我附加额外的项目时,新项目无法被选中。

HTML

<ul id="list">
    <li attrit="AddInfo">item 1</li>
    <li attrit="MoreInfo">item 2</li>
</ul>
<button id="ud">update</button>
JQuery

$(document).ready(function() {
  $('#ud').click(function() {
    $.post("page", function(data){
      $('#list').append(data);
    });
  });
  $('#list ul').click(function(){
    $(this).addClass("selected").siblings().removeClass("selected");
  });
});

我无法选择加载初始页面后附加的任何项。

解决这个问题的最好方法是什么?

每次都像这样重新定义动作侦听器:

$(document).ready(function() {
  $('#ud').click(function() {
    $.post("page", function(data){
      $('#list').append(data);
      $('#list ul').click(function(){
        $(this).addClass("selected").siblings().removeClass("selected");
      });
    });
  });
  $('#list ul').click(function(){
    $(this).addClass("selected").siblings().removeClass("selected");
  });
});