在文档上的不同页面之间传递数据

时间:2012-09-29 20:02:48

标签: javascript jquery events

我有一个页面通过.load()另一个页面的div加载,例如:

$(".page_div").load("otherpage.aspx .wrapper");

我希望otherpage.aspx通知父页面发生的事件,我该怎么做?

3 个答案:

答案 0 :(得分:1)

Look into query strings!如果您想将信息从一个页面传递到下一个页面,通常最好的方法是将信息附加到您传递的URL中。

从技术上讲,你也可以使用cookie或会话,但那些涉及信息的创建而不是“说”信息。

答案 1 :(得分:0)

我认为这里有一个混乱。不能说你是在做一个ajax调用还是做一个页面trasition。

  • 使用查询字符串进行页面转换。
  • 如果您正在进行ajax调用,该信息已经可用,请在回调函数中使用它,该函数将在服务器调用返回后调用。

根据我在api页面上读到的内容,jQuery.load可用于进行ajax调用。

http://api.jquery.com/load/

修改

我不熟悉网络套接字,但是可以像这样实现。

从第2页开始,在事件发生时更新数据库条目

从第一页开始,您通过ajax轮询数据库中的更改。

当用户从其他标签发送新电子邮件并且您的电子邮件发送列表自动更新时,您会注意到Gmail中的类似行为。

答案 2 :(得分:0)

当您通过jQuery.load()加载页面时,它可以包含一个脚本元素。该脚本元素中的任何JavaScript都将在加载页面后执行,因为它在父文档中,所以它具有对父JavaScript的完全访问权限。这意味着它可以调用父文档创建的JavaScript方法。我将在父文档中创建一个类似loadCallback()的方法,然后使用JavaScript loadCallback({some:data})添加一个脚本元素,这将把数据从加载的页面传递到父页面。这是vanilla JavaScript,因此您可以传递数据,函数和任何内容。