Javascript document.getElementById(“main”).innerHTML不显示或不工作
我在同一个文件夹中有main.html、test.html和script.js。我正在使用一个名为Eel的Python包,这就是我与html和Javascript交互的方式。当我调用函数dummy()时,如下图所示,我从Python中得到一个print语句,这正是我想要的,但是当我在dummy()中将“main”更改为“test”时,它不会打印任何内容。为什么呢?为什么script.js知道“main”而不知道“test” main.htmlJavascript document.getElementById(“main”).innerHTML不显示或不工作,javascript,Javascript,我在同一个文件夹中有main.html、test.html和script.js。我正在使用一个名为Eel的Python包,这就是我与html和Javascript交互的方式。当我调用函数dummy()时,如下图所示,我从Python中得到一个print语句,这正是我想要的,但是当我在dummy()中将“main”更改为“test”时,它不会打印任何内容。为什么呢?为什么script.js知道“main”而不知道“test” main.html <div> <p
<div>
<p id="main">This is from main.html</p>
<input type="submit" name="" onclick="dummy()"></input>
<div>
浏览器端JS在与其关联的网页的上下文中运行 脚本位于main.html中 带有
id=“test”
的元素位于test.html中
这是一个不同的文档,在main.html中运行的JS无法访问它(至少除非您使用类似于
iframe
,但即使这样,它仍然是一个不同的文档,您必须通过iframe的API访问该文档)。浏览器端JS在与其关联的网页上下文中运行
脚本位于main.html中
带有id=“test”
的元素位于test.html中
这是一个不同的文档,运行在main.html中的JS无法访问(至少除非您使用类似于
iframe
的东西,但即使这样,它仍然是一个不同的文档,您必须通过iframe的API访问该文档).我认为您没有将script.js添加到main.html(而是将其添加到test.html)
script.js仅当您将js文件添加到main.html文件时,才会使用id=“main”
检查演示:我无法访问python-eel,因此无法在代码段中使用eel.dummy(u),而是更改了另一个p标记的值
函数伪(){
u=document.getElementById(“main”).innerHTML
document.getElementById(“测试”).innerHTML=u
}
这来自main.html
待更改的文本
我认为您没有将script.js添加到main.html(而是将其添加到test.html)
script.js仅当您将js文件添加到main.html文件时,才会使用id=“main”
检查演示:我无法访问python-eel,因此无法在代码段中使用eel.dummy(u),而是更改了另一个p标记的值
函数伪(){
u=document.getElementById(“main”).innerHTML
document.getElementById(“测试”).innerHTML=u
}
这来自main.html
待更改的文本
因为您的html中没有id为“test”的元素。不清楚main.html和test.html之间的关系。。。。。您希望main上的代码能够读取测试的内容???getElementById
正是这样做的。在main.html
文件中,确实有一个id为main
的元素,但没有id为test
的元素。你是在引用每个文件中的script.js
吗?@devd我有这是test.html中带有“test”的p标记,我想我的问题是,script.js为什么知道main.html中有一个“main”,但它不知道test.html中有一个“test”。main.html和test.html位于同一文件夹中。因为您的html中没有id为“test”的元素。不清楚main.html和test.html之间的关系。。。。。您希望main上的代码能够读取测试的内容???
getElementById
正是这样做的。在main.html
文件中,确实有一个id为main
的元素,但没有id为test
的元素。你是在引用每个文件中的script.js
吗?@devd我有这是test.html中带有“test”的p标记,我想我的问题是,script.js为什么知道main.html中有一个“main”,但它不知道test.html中有一个“test”。main.html和test.html在同一个文件夹中。让我看看是否可以共享我的html和script.js。我添加了3个屏幕截图,希望能有所帮助。By script在main.html中,你是说onclick=dummy()吗?对不起,我对JS不太熟悉,我主要用Python编写代码(作为一种爱好)。如果你看这些图片,你会发现我在main.html和test.htmlet中使用了script.js,让我看看是否可以共享我的html和script.js。我添加了3个屏幕截图,希望能有所帮助。By script在main.html中,你是说onclick=dummy()吗?对不起,我对JS不太熟悉,我主要用Python编写代码(作为一种爱好)。如果您查看这些图像,可以看到我在main.html和test.html中使用script.js
<p id="test">This is p tag in test.html</p>
function dummy() {
u = document.getElementById("main").innerHTML
eel.dummy(u)
}