0

我正在使用这个插件来赋予复选框和 iOS 外观:http: //ios-checkboxes.awardwinningfjords.com/

显然,当我使用 Chrome 或 Firefox DOM 检查器时,它不会触及隐藏的复选框输入值。尽管在提交检测到定义状态的表单后它可以正常工作,但它始终保持不变。(我不知道它是怎么做到的......)

目前我正在使用一些输入选择,并根据值(是或否)显示另一个元素:

html:

<select name="announcement" id="announcement">
    <option value="0">No</option> 
    <option value="1">Yes</option>
</select>

jQuery更改检测:

$('#announcement').change(function(){
    if($(this).val() == 0 ){
        $('#listOfCompanies').show();
    }else{
        $('#listOfCompanies').hide();
    }
});

现在,我将第一个转换select为这样的复选框:

<input type="checkbox" name="announcement" value="1" id="announcement">

当我使用 iOS 插件时,有什么方法可以检测到复选框的值吗?

$('#announcement').change(function(){不起作用,因为 DOM 元素中的复选框值不再更改。

4

1 回答 1

1

如果您查看下载附带的 jquery-demo html,它显示了如何绑定 onchange 事件处理程序的示例。

$('#announcement').iphoneStyle({
    onChange: function(elem, value) { 
      // not sure what comes up as the arguments passed in.. but to find out you can do console.log(arguments)
      $('#listOfCompanies').toggle(!value);
    }
});

编辑:

尝试同时传递您的选中/未选中标签选项

$('#announcement').iphoneStyle({
    checkedLabel: 'your checked label',
    uncheckedLabel: 'your unchecked label',
    onChange: function(elem, value) { 
      // not sure what comes up as the arguments passed in.. but to find out you can do console.log(arguments)
      $('#listOfCompanies').toggle(!value);
    }
});
于 2013-01-07T16:19:37.867 回答