ajax调用后,Jquery不工作
jquery not working after ajax call?
第一篇。最近我花了很多时间学习JavaScript。我一直在使用jQuery库,我刚刚了解到ajax调用将无法在页面的动态加载部分工作(没有刷新)。当然,我也需要这些帖子的ajax功能。我需要帮助了解解决这个烦恼的最佳方法。
是的,我已经阅读并看到了jQuery FAQ中所说的内容,但对我来说它是模糊的,没有信息,但确实提供了一些基本信息:http://docs.jquery.com/Frequently_Asked_Questions Why_do_my_events_stop_working_after_an_AJAX_request.3F
具体来说,我正在制作一个用户个人资料页面,类似于facebook个人资料页面的概念。用户向其他用户发布评论,新的评论将使用jQuery的ajax功能自动加载到页面上。每个评论都有按钮,如"删除","喜欢","回复"等,这些按钮与ajax一起工作得很好,但对于自动加载到页面上的评论,它们根本不起作用。
我发现了delegate()方法,我理解这就是为什么有些人会跳过这个。到目前为止,我的代码中只有这样:
$(document).delegate('img', 'click', function(){
alert('test'); //Stub
});
这工作,但问题是我已经有jQuery方法,我写的处理每一个我的ajax调用。我不知道如何使用委托来调用我已经编写的jQuery代码块。这可能吗?例如,这将在用户点击"回复"按钮的评论下面加载一个评论框:
$('img.wallpost_reply').click(function(){
$(this).closest('div.wallpost').find('div.wallreply').slideDown('fast'); //Toggle the window
$(this).closest('div.wallpost').find('textarea.wallpost_input').focus(); //Focus on the textarea
});
^^这是一个非常简单的代码块,工作完美,类似于许多其他小块的代码,我有。当用户点击"Reply"图片时,这个函数会被调用,如下所示:
<img class="wallpost_reply" style="cursor:pointer;" src="./images/reply.png" alt="Reply" />
我如何分配delegate()与我已经写的jQuery代码链接??这可能吗?如果可能的话,我宁愿不编写具有相同功能的全新函数。
对于任何将通过ajax绑定到DOM或在运行时添加的元素,必须使用
http://api.jquery.com/live/
或正在使用的委托。
http://api.jquery.com/delegate/
这些将在文档级别绑定
下面是一个普通函数和一个"活动"函数的例子。live函数仍然可以处理通过AJAX调用插入的HTML。顺便说一下,代码只允许在输入框中输入数字。
常规:
$('input[class="number"]').keyup(function(e)
{
if (/[^0-9'.]/g.test(this.value))
{
// Filter non-digits from input value.
this.value = this.value.replace(/[^0-9'.]/g, '');
}
});
生活:
$('input[class="number"]').live('keyup', function (e) {
if (/[^0-9'.]/g.test(this.value))
{
// Filter non-digits from input value.
this.value = this.value.replace(/[^0-9'.]/g, '');
}
});
- 不正确的工作jquery插件bxslider与插件elevatezoom
- 更改图像src-dons't工作jquery/js
- event.prventDefault()不工作(jQuery实时)
- delay()不会'第二次工作jquery
- 如何工作 jQuery 就绪
- 几天后,昨天停止工作jQuery
- .click() 不再工作 jquery.
- 如何使工作jquery"“滑动”;在iPad上滚动
- 为什么不是't这个选择器正在工作(Jquery和Asp.net)
- Flexslider无法在html网站中工作(jQuery无法加载?)
- 点击,点击不工作?jquery
- 按钮在“加”和“减”之间切换,需要“点击”;只能在fa +上工作.jQuery
- 突出显示搜索列表不工作(jquery问题)
- 页眉内的Div /靠近页面顶部/在2次点击事件后不显示,而它的's页脚双胞胎工作- jquery
- 为什么css后台jQuery代码不工作jQuery设置多个css值
- .stop()不是't使用我的悬停,使快速移动工作-jQuery
- 自定义验证方法不工作- jQuery验证插件
- 数据表columnDefs不工作:jquery / javascript
- 工作jQuery代码赢得'不要在电话间隙跑步
- 我的Javascript代码不工作- Jquery选择器问题