-3
$.get("MyPage.aspx", {foo:"bar"}, function(results){
  Some Js code here.
});

问题- 在 MyPage.aspx 中,我有window.onload方法。这没有被执行。

你的评论?

4

2 回答 2

1

window.onload 不会因为您使用 ajax 调用获取一些新的 HTML 而再次触发。每个文档只有一个 window.onload 事件。

当 ajax 调用完成时,该.get()调用已经具有完成功能。从该完成调用中完成您的工作。

我知道在加载的代码中触发所需代码的唯一方法是首先将该代码放入您的文档中,然后:

  1. 无需等待 onload 执行,而是在 ajax 调用完成后在您想要手动执行的加载代码中调用所需的函数(例如,将在 onload 中执行的相同代码)。
  2. 将内容放入 iframe(然后将获得自己的 onload 事件)。
于 2012-12-17T07:05:43.553 回答
-1

$.get()仅从 Web 服务器检索文件。

window.onload如果显示HTML 文件,则由浏览器执行等。如果您只是加载文件以检索其内容,则不会执行任何客户端 JS 代码。

于 2012-12-17T07:06:02.270 回答