Mr *_* AH 6 ajax jquery events partial ready
这是原位:一个包含html并使用jQuery libray和tabs的页面jQuery UI插件在单击某个选项卡时会加载另一个页面.问题是当页面/ html被加载/渲染时(让我们简化这个并说它只是做类似$("#myDiv").load(url);),就不会触发ready事件,因为当然"窗口"已经加载并触发了加载事件.这意味着我不想在页面的加载(部分加载)上执行任何jQuery操作.UI.tabs插件旨在将页面加载到其他选项卡中,我们可以假设其他页面可能包含自己的jQuery ...所以应该有一些方法来解决这个问题.
我可以想出解决这个问题的非常可怕的方法,例如在页面底部有一个脚本块被渲染(加载到div中),它可以完成我准备好时所做的所有事情(因为你可以假设浏览器)如果脚本块被命中,则已经呈现了页面).然而,这是非常糟糕的做法.有什么建议?
你是如何向服务器发出 AJAX 请求的?如果您使用的是 ASP.NET AJAX,那么 Brian Hasden 的答案就是您要找的。如果您使用 jQuery 发送请求,那么您可以使用 load 函数设置回调。
$(".ajaxLink").load(url, null, function() {
// code here
});
Run Code Online (Sandbox Code Playgroud)
或者设置一个全局 ajaxComplete 事件,每次 ajax 调用完成时都会触发该事件。
$(document).ajaxComplete(function() {
// code here
});
Run Code Online (Sandbox Code Playgroud)
Bri*_*den -1
我相信你可以做这样的事情(源自ASP.NET):
\n\n<script type=\xe2\x80\x9dtext/javascript\xe2\x80\x9d>\n <!--\n Sys.WebForms.PageRequestManager.getInstance().add_EndRequest(Request_End);\n function Request_End(sender, args)\n {\n // Insert code you want to occur after partial page load here\n }\n // -->\n</script>\nRun Code Online (Sandbox Code Playgroud)\n\n哪个应该挂钩到包含部分页面更新的结束请求事件。显然,您需要更新上面的示例以调用您想要的适当的 JS 函数。
\n| 归档时间: |
|
| 查看次数: |
13801 次 |
| 最近记录: |