Ajax 加载新按钮,我需要加载一个新的选择器吗?
Ajax loads new button, do I need to load a new selector?
例如
,假设我正在编写一个消息系统。用户可以添加消息(通过AJAX),并且在他们的消息旁边有一些按钮。(编辑、删除等)
通过加载页面,将加载一些消息。
<div class="message">
<p>blaat</p>
<a href="#" class="btnRemove">Remove</a>
</div>
<div class="message">
<p>blaat</p>
<a href="#" class="btnRemove">Remove</a>
</div>
jQuery选择器知道这些元素。因为当我执行jQuery脚本时它们已经存在。(文档就绪)但是当我添加另一个"消息"时,jQuery 无法处理"删除"链接,因为它是在运行 jQuery 脚本后加载的。
有人可以帮助我吗?提前感谢!
您可以使用
live
方法代替 bind
(或速记click
)。所以它看起来像:
$('.btnRemove').live('click', function(e) { ... });
这使用事件委托,将click
事件处理程序附加到document
而不是任何特定元素。
您可以使用jQuery Live方法来处理使用ajax加载的删除。
你能用这个例子发布JavaScript代码吗? 我知道 jQuery 中的 $().live
函数可能非常适合您的需求,因为它会在按钮添加到DOM
时处理它们......例如:
$('.btnRemove').live('click', function(e) { ... });
相关文章:
- 有没有办法在tinymceiframe中加载一个外部javascript文件
- 在npm中加载一个包的多个版本
- 你能加载一个带有JS超时的PHP包吗
- laravel中的ajax会重新加载一个空白页面
- 如何加载一个html页面并在其中只需单击一次即可运行函数
- 选中复选框时仅重新加载一个DIV
- 加载一个html或JavaScript文件作为iframe源
- 有没有一种方法可以重新加载一个函数而不是整个页面
- 使用requirejs加载一个包含多个类的文件(grunt-concat)
- 加载一个js图像
- 如何加载一个文件夹中可用的脚本文件,而不是加载HTML文件
- 如何生成一个唯一的链接,该链接将加载一个会话,其中包含客户端可用的某些文档
- 加载一个大型 JavaScript 文件与多个整体大小较小的较小文件的性能
- 是否可以从本地主机加载一个特定文件
- 加载一个附加的 JavaScript 的新 URL,然后将更多 JS 附加到该新 URL
- Jquery UI Tabs 在 javascript 中重新加载一个选项卡
- 如何在 Angular 中的 url 更改时仅重新加载一个控制器
- 在当前页面中加载一个新的谷歌地图,加载AJAX
- YouTube API 视频结束加载一个函数
- 我的网站正在加载一个我不知道的外部 JS.我能做什么