2013-05-07 34 views
1

是否可以从弹出窗口获取值?此外,我只想使用JS和HTML,即不使用PHP。这甚至有可能吗?我见过的其他职位上这里像这样的:从弹出窗口获取值仅使用JS和HTML

getting value from popup window

但这是在ASPX。

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

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.s html

<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> 

任何帮助将不胜感激。

+0

啊,怎么我傻是。 – 2016-05-10 06:46:28

回答

2

它适用于我(使用Firefox 20.0)。但是代码真的很难看,但可能你应该研究目前的标准MSDN Window以了解它在firefox中的工作原理(Window对象可能会改变其在其他浏览器中的行为)。啊,当然还有ECMAScript。但要introuduce多个解决方案之一,你可以试试这个:
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> 
+0

我的手指交叉。要试一试,让你知道。顺便说一句,我正在使用铬。 – 2013-05-07 16:42:01

+0

只是试过了......它不工作......也许这是一个铬错误...安装Firefox,因为我们说...连接有点慢,所以我稍后会回发。 – 2013-05-07 23:52:45

+0

我可以证实,这在Firefox中起作用。但不是在铬!感谢Javier为您付出的时间和精力。 – 2013-05-08 10:58:21