首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过代码更改Switchery复选框状态

通过代码更改Switchery复选框状态
EN

Stack Overflow用户
提问于 2014-02-21 18:05:05
回答 19查看 64.1K关注 0票数 36

如何以编程方式将jQuery Switchery复选框状态从选中状态更改为未选中状态(反之亦然)?

我尝试在checkbox元素上使用global_switch_sound.prop('checked', true),但它不起作用。

HTML:

代码语言:javascript
复制
<input id="sound-active-input" type="checkbox"  />

JavaScript:

代码语言:javascript
复制
 global_switch_sound = new Switchery(document.querySelector('#sound-active-input'));
EN

回答 19

Stack Overflow用户

回答已采纳

发布于 2014-02-21 18:13:00

试试这个:

代码语言:javascript
复制
$('.switchery').click();

它应该触发一个点击并切换。或者这样:

代码语言:javascript
复制
$('.switchery').trigger('click');
票数 43
EN

Stack Overflow用户

发布于 2015-02-26 00:25:15

如果有人像我一样,想要一个超越DOM“.click()”的解决方案。以下函数接受Switchery对象和一个布尔值,以指示是否应选中或取消选中开关(分别为true/ false ):

代码语言:javascript
复制
function setSwitchery(switchElement, checkedBool) {
    if((checkedBool && !switchElement.isChecked()) || (!checkedBool && switchElement.isChecked())) {
        switchElement.setPosition(true);
        switchElement.handleOnchange(true);
    }
}

示例用法:

代码语言:javascript
复制
var mySwitch = new Switchery($('#mySwitchCheck')[0], {
            size:"small",
            color: '#0D74E9'
        });
//Checks the switch
setSwitchery(mySwitch, true);
//Unchecks the switch
setSwitchery(mySwitch, false);

希望这对其他人有帮助

票数 32
EN

Stack Overflow用户

发布于 2016-11-14 07:46:46

试试这个:

代码语言:javascript
复制
function changeSwitchery(element, checked) {
  if ( ( element.is(':checked') && checked == false ) || ( !element.is(':checked') && checked == true ) ) {
    element.parent().find('.switchery').trigger('click');
  }
}

示例用法:

代码语言:javascript
复制
var element = $('#sound-active-input');
changeSwitchery(element, false);
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21931133

复制
相关文章

相似问题

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