跨域的iframe获得价值

时间:2010-09-28 15:53:41

标签: javascript iframe dns

如何从其他域页获取某些值?

例如

来自不同域的两页

的test.html:

代码:

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div>
 <span id="data"></span>
 <iframe name="dd" src="http://otherdomain.com/innerpage.html" style="width:600px;height:500px;"></iframe>
</div>
</body>
</html>

innerpage.html(在另一个域名上)

代码:

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
 function SendDataToParent(){
  var dataId = parent.document.getElementById("data"),
   data = document.getElementById("iframeData").value;
   dataId.innerHTML ="<input type='hidden' value='"+data+"' name='dataFromChildIframe'/>";

 }
</script>
</head>
<body>
<div>
 <button onclick="SendDataToParent();">SendDataToParent</button>
 <input type="text" id ="iframeData" value="some content here">
</div>
</body>
</html>

我想获取iframeData值的id输入,并将此值发送到父页面

但代码不起作用,怎么做?

1 个答案:

答案 0 :(得分:2)

出于安全原因,在两个不同的域中页面完全不可能在当前浏览器中在客户端上进行通信。

作为一种解决方法,您可以在两个页面中使用JSONP。