Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过JavaScript从另一个页面按id获取元素_Javascript_Jquery_Html - Fatal编程技术网

通过JavaScript从另一个页面按id获取元素

通过JavaScript从另一个页面按id获取元素,javascript,jquery,html,Javascript,Jquery,Html,我有两页index.html和about.html。在about.html中有一个表,aI需要从TD中获取id为'id1'的值,并将其分配给某个变量X,以便稍后在index.html页面使用 如果我把它放在一页纸上的话,这会非常有效 var X=document.getElementById('id1').innerHTML; 警报(X);//123 。。。 123 …一种方法是存储x的值,以便: localStorage.setItem('someName',x) 然后像这样从您的其他页面访

我有两页
index.html
about.html
。在
about.html
中有一个表,aI需要从TD中获取id为'id1'的值,并将其分配给某个变量
X
,以便稍后在
index.html
页面使用

如果我把它放在一页纸上的话,这会非常有效

var X=document.getElementById('id1').innerHTML;
警报(X);//123
。。。
123

一种方法是存储
x的值,以便:

localStorage.setItem('someName',x)

然后像这样从您的其他页面访问它(前提是两个页面都是同一域名的一部分):


x=localStorage.getItem('someName',x)

您可以使用
窗口。本地存储

  localStorage.setItem('x', document.getElementById('id1').innerHTML);
现在,在第二页,您可以看到:

 var x = localStorage.getItem('x');
 if(x){
    alert(x);
 }
您可以在url中发送它,比如说您可以创建类似于
about.HTML?x=thevalue
的url。然后在“关于”页面上:

if(location.href.index of('=') !== -1){
    var x = location.href.split('=').pop();
    alert(x);
}

.split()
将创建数组,
.pop()
将为您提供数组的最后一个元素,在本例中,该元素将是
123
您可以使用
ajax
。有了jQuery,这将更容易

所以,在使用jQuery的基础上,可以使用函数

index.html

javascript

$(“按钮”)。单击(函数(){
$('').load('/toruta#td1',函数(数据){
警报($(this.find('td').html());
});
});
html

show

about.html


通过ajax加载
工作仓

索引如下:

大概是:

但是如何在不将其存储在本地存储的情况下获取它呢?将其存储到cookie中,或者将其存储到服务器并在您访问其他页面时请求它。您必须将其存储在非代码运行时环境的某个位置,因为每次刷新或更改页面时都会发生更改。我不需要总是存储它。这只是一个小项目。我不在乎它是否会在每次我加载页面时改变。好吧,你需要存储它,尽管如此,实际上没有其他方法可以不这样做就将一些值从一个页面转移到另一个页面。自己看:打开控制台并执行
var测试='test'
。键入
test
,检查它是否具有您刚才指定的值。现在刷新页面或返回stackoverflow主页,再次打开控制台并再次键入
test
。看看你收到了什么信息。你能解释一下吗?我在努力,但还是不明白<代码>$('#标记')。单击(函数(){$('').load('about.html#math',函数(数据){alert($(this.find('td').html());})})这是我的代码#标记是按钮的id#math是td元素的id,我必须从中获取值。当您单击
#math
按钮时,您将调用
about.html
页面,结果函数将查找id为
math
的元素,并将该元素的html放入调用该函数的元素中-在本例中为
$()
这是临时的
div
。有见识的
$('button').click(function() {
  $('<div />').load('/toruta #td1', function(data) {
    alert($(this).find('td').html());
  });
});
<button>show</button>