【发布时间】:2017-09-17 07:14:53
【问题描述】:
我正在做一些更大的事情,但我会继续提供一个更简单的例子来解决我的问题。
假设我有两个 html 页面。在第一页上,我有三个锚标记,它们都链接到第二页。
<a href="nextpage.html"> You clicked Red </a>
<a href="nextpage.html"> You clicked Blue </a>
<a href="nextpage.html"> You clicked Yellow </a>
第二页只有一个空的段落。
当您单击第一页上的三个链接之一并被定向到第二页时,第二页应该包含相应单击的 <a> 标记的文本。
我已经在 .js 文件中编写了这样的 javascript(Jquery) 代码,并包含在两个页面的 <head> 中:
$(document).ready(function() {
$('a').click(myFunction);
});
function myFunction() {
var text = $(this).text();
$("p").html(text);
}
上面的代码应该可以工作,但遗憾的是它没有。我在 console.log 中运行了一个测试,当我单击一个链接并被定向到 2nd 时得到的结果是未定义的。我不知道为什么会发生这种情况,因为我在两个页面上都包含了 javascript 文件并且应该相互通信。
【问题讨论】:
-
让我纠正您的一个误解:因为您在两个页面上包含一个 javascript 文件并不意味着它们可以相互通信。
-
您可能需要在 Get 或 Post 变量中发送您的
<a>文本,以便您可以从其他页面中获取它。 -
不,这不起作用,这不是
single page app,而是“相同”应用程序的三个不同实例...不幸的是,只是因为您在@987654328 中包含了相同的JavaScript文件@、page2.html和page3.html,这些html文件中的每一个都获得了JavaScript "program"的“自己的实例”,它包含在somescript.js文件中......这就是为什么它是undefined跨度>
标签: javascript jquery html