【问题标题】:javascript jquery selecting radio buttonsjavascript jquery选择单选按钮
【发布时间】:2014-09-26 15:19:19
【问题描述】:

我有一个输出许多 div 的 php 脚本,每个 div 中都有一个具有特定值的单选按钮。我想通过在单击 div 时选择单选按钮来创建更好的用户体验,这在我使用 jquery 时不是什么大问题。问题是,当单击单选按钮本身而不是 div 时,以下单击不再具有选择单选按钮的效果。在检查所选单选按钮之前,我还尝试删除每个单选按钮上的选中属性,但这不起作用。这是我的做法:

$(".fontCellDiv").click(function(){ 
     $(this).find("input").attr("checked", true);
 });

有人有想法吗?

【问题讨论】:

  • 无法清楚地理解您想要什么并发布 html 或小提琴链接 plz。

标签: javascript php jquery html css


【解决方案1】:

使用.prop() 代替.attr()

来自文档:

属性与属性

属性和属性之间的区别在 具体情况。在 jQuery 1.6 之前,.attr() 方法有时 在检索某些属性时考虑了属性值, 这可能会导致不一致的行为。从 jQuery 1.6 开始,.prop() 方法提供了一种显式检索属性值的方法,而 .attr() 检索属性。

【讨论】:

  • 是的,这就是解决方案,但我仍然不明白为什么 attr() 不能完成这项工作。
  • 阅读我发送给您的全部文档。此外,如果一个答案解决了您的问题,您应该“接受”它作为正确答案
【解决方案2】:

$(".fontCellDiv").click(function(){ 
    $(".fontCellDiv").find("input").removeAttr('checked');
    $(this).find("input").attr("checked", true);
});
.fontCellDiv{
    width: 100px;
    background-color: #0f0;
    margin-bottom: 5px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<div class="fontCellDiv">
    <input name="sameGroup" type="radio" />
</div>
<div class="fontCellDiv">
    <input name="sameGroup" type="radio" />
</div>
<div class="fontCellDiv">
    <input name="sameGroup" type="radio" />
</div>

检查此示例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-29
    • 2011-08-31
    • 1970-01-01
    • 2011-07-17
    • 2015-02-27
    • 2015-03-28
    • 2012-12-15
    • 1970-01-01
    相关资源
    最近更新 更多