【问题标题】:jQuery: why doesn't programmatic radio button selection work?jQuery:为什么程序化单选按钮选择不起作用?
【发布时间】:2011-02-15 15:27:42
【问题描述】:

我的任务非常简单:给定一组 4 个单选按钮,我需要在单击图像时以编程方式检查/选择其中一个。就这么简单。

现在我有了这些单选按钮:

<input type="radio" name="answer" value="A">
<input type="radio" name="answer" value="B">
<input type="radio" name="answer" value="C">
<input type="radio" name="answer" value="D">

以下 jQuery 代码就像一个魅力 - 当从图像的 click() 函数调用时:

$('input[name="answer"]').filter("[value='A']").attr("checked", true);

也就是第一个单选按钮被选中,大家都很开心。但是,一旦我将同一行代码放入同一页面上另一张图片的 click() 函数 - 它突然停止工作!当我点击另一张图片时,我可以看到——一瞬间! - 右单选按钮被选中,然后立即清除!显然,除了图像的 click() 函数中的这一行之外,这些单选按钮上没有任何代码操作。

请保存我的理智 - 谁能给我解释一下,这到底是怎么可能的???而且,更重要的是,如何解决这个问题?

【问题讨论】:

  • 查看将代码绑定为图像的“点击”处理程序的代码会很有帮助。

标签: jquery radio-button


【解决方案1】:

看到您的问题与设置单选按钮无关,但在 jQuery 2.0.0 和我使用的浏览器(IE 和 Chrome)中 .attr 不起作用,但 .prop 起作用:

$("#someControlNameOrFilter).prop("checked", true);

【讨论】:

    【解决方案2】:

    也许这篇文章可以帮助你:How to reset radiobuttons in jQuery so that none is checked

    您的代码可以在 jsfiddle 上运行:http://jsfiddle.net/DfLVs/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-30
      • 2014-01-31
      • 2017-02-08
      • 1970-01-01
      • 1970-01-01
      • 2016-02-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多