首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQueryUI单选/复选按钮不会以编程方式更改

jQueryUI单选/复选按钮不会以编程方式更改
EN

Stack Overflow用户
提问于 2010-08-26 04:05:37
回答 4查看 14.5K关注 0票数 11

我可以预测地读取jQueryUI单选按钮的值,但是我不能以编程方式设置它。无论我使用哪种方法来更改单选按钮的值,jQueryUI界面都不会更新其界面。

代码语言:javascript
复制
<div id="radio">
    <input type="radio" name="radio" value="true" checked="checked" />Yes
    <input type="radio" name="radio" value="false" />No
</div>

<script type="text/javascript">
    $('#radio').buttonset();

    // One of the many ways that won't work.
    $('[name="radio"]:radio:checked').val("false");
</script>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-08-26 04:13:08

更新该值后,如下所示:

代码语言:javascript
复制
$('[name="radio"][value="false"]').attr("checked", true);

您需要通知jQuery UI进行更新,如下所示:

代码语言:javascript
复制
$('#radio').buttonset("refresh");

You can give it a try here

票数 20
EN

Stack Overflow用户

发布于 2011-05-26 18:52:58

我通常会做一个:

代码语言:javascript
复制
$('[name="radio"][value="false"]').attr("checked", true).trigger("change");

buttonset("refresh")调用被绑定到change事件,当您以编程方式更改值时不会触发该事件-手动触发它可以解决ui问题,并且您无需担心按钮集在哪里

票数 8
EN

Stack Overflow用户

发布于 2010-08-26 04:08:52

代码语言:javascript
复制
$('[name="state"]:radio:checked').attr('checked', true);   // checked
$('[name="state"]:radio:checked').removeAttr('checked');   // unchecked

** 笔记 **

代码语言:javascript
复制
$(':radio').val();  // same as $(':radio').attr('value');

因此:

代码语言:javascript
复制
$(':radio[checked]').val(); // -> the value of the first checked radio button found
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3569794

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档