问问题
565 次
3 回答
5
一旦您迁移到新页面,任何进一步的 JS 执行都将丢失。您必须执行以下操作,将文本传递到查询字符串变量中的新页面:
$(".link").click(function(){
var encodedText = encodeURIComponent($("#some_id").text());
window.location = "./html2.html?txt=" + encodedText;
});
html2.html
并在您的页面上有一些这样的代码:
var capturedText = window.location.search.match(/(\?|&)txt=(.*?)(&|$)/);
capturedText = capturedText ? decodeURIComponent(capturedText[2]) : '';
$("#txt").val(capturedText);
于 2012-07-20T20:54:59.693 回答
0
如果some_id
是 in html2.html
,那么很简单:让 html2.html 中的 JavaScript 填写文本
$("#txt").val($("#some_id").text());
如果some_id
是 in html1.html
,则应将值发送到服务器并填写服务器端的文本区域。如果这不必要地复杂或不可行,您可以通过多种不同的方式传递文本,最常见的是:
- 在网址中
html2.html?text="my text"
- 在 cookie 中(大多数情况下不推荐)
如果您通过 URL 执行此操作,只需从 .js 上的 JavaScript 中的 URL 提取文本html2.html
。
于 2012-07-20T20:51:29.763 回答
0
运行“window.location”后,新页面将开始加载,脚本将停止执行。
此外,您不能修改未来页面上的元素。
您最好的方法是加载html2.html#someTextHere
,然后html2.html
将散列中的文本复制到 textarea 中。
于 2012-07-20T20:56:30.753 回答