在 iframe 中获取单选值

Posted

技术标签:

【中文标题】在 iframe 中获取单选值【英文标题】:Get radio value inside iframe 【发布时间】:2010-09-16 21:58:50 【问题描述】:

我该如何使用 jQuery 来做这件事?

基本结构:

<form id="myForm">
  <iframe>
    <!-- Normal html headers omitted -->
    <input type=radio name="myRadio" value=1>First
    <input type=radio name="myRadio" value=2>Second
    <input type=radio name="myRadio" value=3>Third
  </iframe>
  <input type=button value="Submit" />
</form>

我尝试了网上的各种例子,例如

$("input[@type=radio][@checked]");

但是失败了。即使使用 jQuery 表单插件的 .fieldValue() 失败。

【问题讨论】:

【参考方案1】:

试试$('#myForm iframe').contents().find('input[name=myradio]').val()

我假设 iframe 内容已经加载并且可以访问,例如同一个域。

【讨论】:

实际上,这行得通。我使用 而不是 value=1。我的错,错字。【参考方案2】:

除非 jQuery 有一些我不知道的魔法,否则访问另一个框架的 DOM 需要一些技巧。这可能有效:

var frameDocument = $('#myForm iframe').contentDocument || $('#myForm iframe').contentWindow.document;
$(frameDocument).find('input[type=radio][checked]');

并且,请注意 jQuery 文档中的这一点:

注意属性名称之前的“@”在 1.2 版中已被弃用。

【讨论】:

以上是关于在 iframe 中获取单选值的主要内容,如果未能解决你的问题,请参考以下文章

无法在 php 中获取单选值

如何在 jQuery 中获取动态创建的输入的单选值

checkbox的选中全选返选获取所有选中的值所有的值单选全部时父选中

在winform中如何获取两个单选框中选中的那个值

提交后通过if语句测试输入单选值[重复]

如何将输入单选值输入 C#