【发布时间】:2010-05-12 14:49:42
【问题描述】:
我正在编写一个使用 jQuery for AJAX 进行大量现场编辑和更新的页面。
我遇到了一个问题,可以用下面描述的工作流程来最好地总结:
- 单击页面上的“element1”会生成 jQuery AJAX POST
- 以json格式接收数据
- 接收到的数据为json格式
- 接收到的数据用于更新页面中的现有元素“结果”
- 接收到的数据实际上是一个 HTML 表单
- 我希望 jQuery 在单击表单按钮时负责发布表单
问题出现在上面的第 6 点。我的主页中有如下代码:
$(document).ready(function(){
$('img#inserted_form_btn').click(function(){
$.ajax({'type': 'POST', 'url': 'www.example.com', 'success': function($data){
$(data.id).html($data.frm);
}), 'dataType': 'json'}
});
});
但是,事件并未被触发。我认为这是因为当第一次加载文档时,页面上不存在 img#inserted_form_btn 元素(由于在页面上单击了一个元素,它被插入到了 DOM 中(上面的代码中没有显示 - 到保持问题简短)
因此,我的问题是:如何让 jQuery 能够响应在页面加载后添加到 DOM 的元素中发生的事件?
【问题讨论】:
-
请注意这个问题,其中讨论了 .on、.live、.delegate 和 .click stackoverflow.com/questions/10983244/unsure-about-on-method/… - 添加此引用以保持此问题的站点/上下文是最新的