$('document')。ready()函数在ajax响应后无法工作
就绪函数在ajax响应后无法工作。下面是我的代码。
function AjaxLoaded() {
$.ajax({
type: 'POST',
url: 'abc.php',
data: dataString,
success: function(result) {
$('document').trigger('ready');
}
});
}
但这根本不起作用。任何答案将不胜感激。
首先,它应该是$(document)
,不$('document')
,但是这是没有实际意义,因为你不能手动触发文档上的ready
事件。它只在页面加载时触发一次。
如果你有一些你想在这个AJAX调用完成后运行的代码,把它放在一个函数中,然后调用它。
您可以使用$.holdReady()
但是我建议不要干扰基本DOM事件的发射。
应该
$(document).trigger('ready');
不是一旦其被执行
$('document').trigger('ready');
不过这不会工作在jQuery释放分配给ready
事件的所有处理程序。
编辑
您可以将喜欢
$(document).on('ready urmethod',function(){})
并调用像
$(document).trigger('urmethod');
如果它“不会工作” - a)为什么我们发布它作为答案,b)为什么人们提出这个问题? – Brant 2014-12-02 11:16:41
''不,你不能这样做''可以永远是答案 – 2014-12-02 11:18:19
感谢您的宝贵response.I试过这个,但不工作。 – Thirupathi 2014-12-02 11:18:41
如果与您的场景更相关,您可能会考虑使用['jQuery.holdReady()'](http://api.jquery.com/jQuery.holdReady/)。 – Matt 2014-12-02 11:13:01
听起来像是一个xy问题:http://mywiki.wooledge.org/XyProblem – 2014-12-02 11:18:27