我有一个非常复杂的表单,它触发AJAX调用以呈现检索某些信息的部分。
我遇到了一个特殊场景,我希望将.on(' click')事件绑定到一个行为类似于按钮的元素。问题是,这个元素深深地嵌套在其他元素中,这些元素在部分刷新期间也会被破坏。这是HTML的一个例子。
<div id="locations_grid"><%= render 'table' %>
和部分:
<fieldset>
<legend>List</legend>
<div class="lists>
<div class="project_list">
<div id="pagination_link">
<a class="more">
More records
</a>
</div>
</div>
</div>
</fieldset>
从我的例子中,我想绑定&#39;点击&#39;类的事件&#34;更多&#34;,它嵌套在div和fieldset的排列中。看作&#34; location_grid&#34;呈现html,这将是.on()事件的锚点,因为它在部分刷新后不会被销毁 - 所以我最初的尝试是:
$('#locations_grid').on('click','.more', function(){
//do something
});
然而,(据我的理解)我怀疑这不会起作用(并且它没有)因为&#34;。更多&#34;不是&#34;#locations_grid&#34;的直接孩子。所以到目前为止我的尝试是各种组合:
$('#locations_grid').on('click','fieldset .lists .project_list #pagination_link .more', function(){
//do something
});
然而,似乎没有一个成功地将click事件绑定到&#34; .more&#34;类。
如果有人知道我错过了什么,那么这个帮助会很受欢迎! 谢谢大家,
答案 0 :(得分:0)
您可以使用如下代码
$('body').on('click','fieldset .lists .project_list #pagination_link .more', function(){
//do something
});
or
$('body').on('click','.more', function(){
//do something
});
我认为这将是有效的