从弹出窗口获取价值仅使用JS& HTML

时间:2013-05-07 14:42:42

标签: javascript popup cross-page-postback

是否可以从弹出窗口中获取值?另外我想只使用JS和HTML,即没有PHP。这甚至可能吗?我在这里看过其他帖子就像这样:

getting value from popup window

但是在aspx中。

我搜索了一下,发现了这个链接:

http://www.bignosebird.com/js/popmap.shtml

然而,它适用于那些家伙网站但不是当我复制并粘贴它时,我可能是一个菜鸟所以这就是我所拥有的:

parent.html

<html>
<head>
</head>
<body>
<form>
<INPUT TYPE="TEXT" NAME="maparea" SIZE=2 VALUE="">
<input type=button onClick='targetitem = document.forms[0].maparea; dataitem = window.open("map.shtml", "dataitem", "toolbar=no,menubar=no,scrollbars=yes"); dataitem.targetitem = targetitem' value="Show Map">
</form>
</body>
</html>

map.shtml

<html>
<head>
<script>
function select_item(item)
{
targetitem.value=item;
top.close();
return false;
}
</script>
</head>

<body>

<CENTER>
<B>Our Map</B>
<BR>

<IMAGE SRC="map1.gif" ISMAP USEMAP="#MAP1">
<MAP NAME="MAP1">
<AREA SHAPE=RECT COORDS="11,10,116,133" HREF="" onClick='return select_item("1")'>
<AREA SHAPE=RECT COORDS="121,11,227,172" HREF="" onClick='return select_item("2")'>
<AREA SHAPE=RECT COORDS="11,140,115,226" HREF="" onClick='return select_item("3")'>
<AREA SHAPE=RECT COORDS="119,177,225,227" HREF="" onClick='return select_item("4")'>
<AREA SHAPE=default HREF="" >
</MAP>
</CENTER>
</body>
</html>

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

它适用于我(使用Firefox 20.0)。但是代码实际上是非常丑陋和旧的,可能你应该研究MSDN Window的现有标准来理解它在firefox中是如何工作的(Window对象可能会改变其在其他浏览器中的行为)。啊,当然还有ECMAScript。但是为了介绍多种解决方案中的一种,你可以试试这个:
parent.html

<input type="text" id="output"/>
<button id="show">Open</button>

<script>
    document.getElementById('show').addEventListener('click', function(){
        window['output'] = document.getElementById('output');
        window.open('map.html')
    });
</script>  

maps.html (我更改了扩展名!)

<input type="text" id="user_text"/>
<input id="send" type='button' value'send'/>

<script>
    document.getElementById('send').addEventListener('click', function(){
    window.opener['output'].value = document.getElementById('user_text').value;
})
</script>