我有一个包含以下内容的html页面,名为“page1.html”:
<div>
<div id="content">
content
</div>
<script type="text/javascript">
var x=5;
var y=2;
</script>
<div id="other">Some other content</div>
</div>
在另一个html页面中,我想得到变量“x”(5)的值。这是主页面:
<!DOCTYPE html>
<html>
<head lang="en">
<script type="text/javascript" src="app.js"></script>
</head>
<body>
<div id="new_content"></div>
</body>
</html>
下面是app.js脚本:
$(function(){
$.get('page1.html', function(result){
var obj = $(result).find('script');
$(this).append($('#new_content').text(obj.html()));
});
});
而结果是“var x=5; var y=2;"。有没有办法从var x中只得到值5?
谢谢你的帮助。
编辑:我忘了写这只是一个例子,page1.html中的脚本代码比上面显示的要复杂得多。app.js中的对象“obj”是一个[object htmlscriptelement],所以我想知道是否存在一个方法/att,我可以用它直接访问var x。
4条答案
按热度按时间rjzwgtxy1#
或者,您可以简单地按以下方式使用localStorage:
第一页. html:
第二页. html:
zd287kbt2#
这似乎是一个有点奇怪的事情尝试和做。
我会尽我最大的努力来回答,但这将是很好的,以获得更多的背景下,为什么你要这样做,因为它可能是有一个更好的,更清洁的方式来做。
根据您提供的信息,我的建议是将值分配给DOM对象,jQuery是为了遍历DOM并对其进行操作而构建的,尝试解析原始javascript以提取变量值确实不是一个好主意。
因此,第1页将如下所示:
那么我的jQuery将看起来像这样:
这只是伪代码,但希望您能理解其中的含义。
参考链接:
wh6knrhe3#
您可以尝试在粘贴代码之前注解vat y=...行,如下所示:
rlcwz9us4#
从另一个html页面(例如page1)获取值
在第二页的script标签中