我如何处理上述问题。我在javascript中尝试过.append(),但你可以从一个html文件中获取数据并将其插入另一个文件中吗?有些请帮忙。
答案 0 :(得分:0)
如果您收到数据的页面是由您的js创建的,那么就这样做。
var childPage = window.open("somepage.html");
子页面需要一个全局函数来接收数据,然后只需调用它。
childPage.passData(dataToPass);
如果接收数据的页面是父级,输入在子级上就是这样。
window.parent.someFunction(dataToPass);
然后,您的各自职能部门必须接收所述数据并在那里完成工作。
这些功能必须在每个页面的全局范围内。
答案 1 :(得分:0)
您应该将输入包装在<form>
中,action
属性设置为您要在其中显示值的页面的url
,如下所示:
<form action='url to second page' method='get'>
<input name='name' value='something' />
<button>Submit</button>
</form>
在第二个html页面中,您可以通过在加载时调用此answer中给出的js函数来检索请求参数:
例如,
<html>
<head>
<title>b.html</title>
<script>
function load() {
var params = getRequests();
console.log(params['name']);
}
function getRequests() {
var s1 = location.search.substring(1, location.search.length).split('&'),
r = {}, s2, i;
for (i = 0; i < s1.length; i += 1) {
s2 = s1[i].split('=');
r[decodeURIComponent(s2[0]).toLowerCase()] = decodeURIComponent(s2[1]);
}
return r;
};
</script>
</head>
<body onload='load();'></body>
</html>
函数getRequests()
返回一个包含所有请求参数的对象,其中input元素的名称为键值。因此,如果您的第一个html页面包含name='test'
的输入,请输入以下代码:
var params= getRequests();
var value =params['name'];
将在第二个html页面中显示测试输入的值。然后,您可以使用DOM
API方法(例如document.getElementById()
)来定位要在其中显示值的表格元素,并将其设置为innerText
。
答案 2 :(得分:-1)
你能从一个html文件中获取数据并将其插入另一个文件吗?
尝试 .load()
$("#mydivid").load("/myotherpage.html");
获取该页面的特定部分
$("#mydivid").load("/myotherpage.html #dividonotherpage");
我们也可以在加载后执行某些操作
$("#mydivid").load("/myotherpage.html", function() {
$("#mydivid").show();
/* like grab the values of attributes .. */
});
编辑: /阅读@ QBM5,我发现您可能将'data'称为来自其他窗口的本地客户端用户输入。如果是这样,请忽略此答案,因为这不会获取未作为原始交付标记的一部分设置的更改。