checkBox单选:

  比较喜欢layui的checkbox的样式,功能要求单选。我的第一想法就是js控制嘛。像下面一样。

 1 $(document).ready(function(){
 2     $('#checkOnly').find(':checkbox').each(
 3          function(){
 4          $(this).click(function(){
 5            if($(this).is(':checked')){
 6               $(this).attr('checked',true).siblings().attr('checked',false);
 7                }else{
 8                  $(this).attr('checked',false).siblings().attr('checked',false);
 9                }
10             });
11         }
12     );
13 });

  达不到效果。排除后发现,不加上layui的from的样式是完全可以达到效果的。那原因在layui本身了。百度了一波。

 1 layui.use(['element', 'form', 'laydate'], function() {
 2      var form = layui.form;
 3      var laydate = layui.laydate;
 4      form.on('checkbox(oneCheck)', function(data){       
 5        $("input[name='checkOne']").prop("checked", false);
 6         $(this).prop("checked", true);           
 7         form.render('checkbox');    
 8      });      
 9      form.render('checkbox');
10 });

  测试后发现是完全可以的。附上:

 1    <form class="layui-form" action="" lay-filter="example">
 2          <div class="layui-form-item">
 3              <div class="layui-input-block" id="checkOnly">
 4                  <input type="checkbox"  title="一个月" name="checkOne" value="1" lay-filter="oneCheck"  checked>
 5                  <div class="layui-unselect layui-form-checkbox">
 6                      <span>一个月</span>
 7                      <i class="layui-icon layui-icon-ok"></i>
 8                  </div>
 9                  <input type="checkbox"  title="三个月" name="checkOne" value="3" lay-filter="oneCheck">
10                  <div class="layui-unselect layui-form-checkbox">
11                      <span>三个月</span>
12                      <i class="layui-icon layui-icon-ok"></i>
13                  </div>
14                  <input type="checkbox"  title="半年" name="checkOne" value="6" lay-filter="oneCheck">
15                  <div class="layui-unselect layui-form-checkbox">
16                      <span>半年</span>
17                      <i class="layui-icon layui-icon-ok"></i>
18                  </div>
19                  <input type="checkbox"  title="一年" name="checkOne" value="12" lay-filter="oneCheck">
20                  <div class="layui-unselect layui-form-checkbox">
21                      <span>一年</span>
22                      <i class="layui-icon layui-icon-ok"></i>
23                  </div>
24              </div>
25          </div>
26      </form>
12-22 16:14