jQuery:.get之后的dom插入选择器问题

时间:2010-06-18 19:58:09

标签: jquery dom get css-selectors insertion

HI Volks,

这是我想要用ajax代替的代码块:

<div class="results">
  <span id="like9">
    <a class="like" rel="ajax.php?id=9" href="#">klick</a>
  </span>
</div>

这是我观察ajax链接的方式:

$(document).ready(function()
{
  $('.results .like').click(function()
  {
     params = getUrlVars($(this).attr('rel'));
     $.get($(this).attr('rel'), function(data)
     {
       $('#like'+params['id']).html(data); 
     });

     return false;
  });
});

点击链接后,Everythings工作正常,代码块将替换预期的方式。除了链接名称外,Everthing是相同的。

但是当我第二次点击链接时,选择器不再工作了。 我认为因为旧的a.like被替换了。

我的问题是,如何告诉jquery或DOM有新的DOM节点

我希望得到帮助。 THX很多。

2 个答案:

答案 0 :(得分:2)

您可以尝试使用jQuery.live()

$(selector).live("click", function() {});

答案 1 :(得分:1)

尝试$('.clickme').click(),而不是使用bind()一次$('.clickme').live('click', function() { ... });,而不是{{1}},它主要监视更改并维护DOM更改的绑定。

有关详情,请参阅here