在页面上放置字符串

时间:2012-08-09 12:55:59

标签: javascript html string

我正在使用window.opener将字符串值从子窗口传递到父窗口,因为 -

function reply_click(clicked_id)
{
alert(clicked_id);

window.opener.document.write(clicked_id);
window.close ();
}

cliced_id是我要传回的字符串。

但是我想将它传回主页面上的隐藏输入,以便我可以再次使用它。问题是我无法指定将字符串值放在主页上的位置,而只是将字符串值加载到没有任何原始内容的新页面中。

是否可以传回字符串并保留原​​始HTML内容?

3 个答案:

答案 0 :(得分:1)

是的,window.opener是完整的window参考。

您可以致电window.opener.myCallback(clicked_id)window.opener.clickedId = clicked_id

答案 1 :(得分:1)

是的,如果原始页面上有一个带有ID的元素,您可以使用getElementById引用该元素并设置innerHTML

例如,页面上有一个空div:

<div id="myDiv"></div>

您可以使用此代码

function reply_click(clicked_id)
{
    alert(clicked_id);
    window.opener.document.getElementById("myDiv").innerHTML = clicked_id;
}

答案 2 :(得分:1)

您为什么不将您的值存储在html5存储对象(例如sessionStorage / localStorage)中,请访问 Html5 Storage Doc 以获取更多详细信息。使用此功能,您可以在本地临时/永久存储中间值,然后访问您的值 用于存储会话的值

sessionStorage.getItem('label')
sessionStorage.setItem('value', 'label')

或使用

永久存储值
localStorage.getItem('label')
localStorage.setItem('value', 'label')

因此,您可以使用html5存储对象在多个页面之间存储(临时)表单数据