Javascript 访问iframe元素

Javascript 访问iframe元素,javascript,asp.net,radio-button,Javascript,Asp.net,Radio Button,我有一个iframe <iframe id="Iframe1" frameborder="0" src="datalist.aspx"> 在my datalist.aspx中,我有一个id为“rdb”的单选按钮。是否可以通过定义了iframe的我的页面中的iframe访问单选按钮的id。我真的想确定javascript代码中是否单击了单选按钮。如果我可以得到它的id,那么工作就会更容易。您可以在父级的html中执行以下操作: <html> <script&

我有一个iframe

<iframe id="Iframe1" frameborder="0" src="datalist.aspx">


在my datalist.aspx中,我有一个id为“rdb”的单选按钮。是否可以通过定义了iframe的我的页面中的iframe访问单选按钮的id。我真的想确定javascript代码中是否单击了单选按钮。如果我可以得到它的id,那么工作就会更容易。

您可以在父级的html中执行以下操作:

<html>
  <script>
    function check_radio() {
      alert(window.frames["inner_frame"].document.getElementById("rdb").checked)
    }
  </script>
  <iframe name="inner_frame" src="iframe_inner.html"></iframe>
  <a href="javascript:check_radio()">Check Radio Button 1</a>
</html>

功能检查_收音机(){
警报(window.frames[“内部框架”].document.getElementById(“rdb”).checked)
}
其中,内部框架(iframe_inner.html)的html为:

单选按钮1
单选按钮2

在提出此问题之前,您必须首先提供的最重要信息是iframe中的页面与父页面位于同一个域中。您所说的“父页面的同一个域”是什么意思对不起,请插入并回答Soul_Master的问题,但域名是url的第一部分,例如someaddr.com或someaddr.co.uk。如果iframe与父页面不共享同一个域,则无法在它们之间进行通信,因为浏览器会出于安全原因阻止它。Sool_Master询问iframe中的页面是否是同一网站的一部分,是否与父页面使用相同的域名(yourdomain.com)托管。如果不是,则您正在尝试执行浏览器出于安全考虑不允许的操作。我的帧id是frame1,因此当我尝试使用If(window.frames[“frame1”].document.getElementById(“rdb”).checked))警报(“您已选中”)访问它时;然后它说需要对象你在用什么浏览器?它可能与Firefox和IE有所不同
<input type="radio" name="group1" id="rdb"     value="1"> Radio Button 1
<input type="radio" name="group1" id="another" value="1"> Radio Button 2