摘要:
layui 是一款采用自身模块规范编写的前端 UI 框架,遵循原生 HTML/CSS/JS 的开发方式,极易上手,拿来即用。其风格简约轻盈,而组件优雅丰盈,从源代码到使用方法的每一...
layui 是一款采用自身模块规范编写的前端 UI 框架,遵循原生 HTML/CSS/JS 的开发方式,极易上手,拿来即用。其风格简约轻盈,而组件优雅丰盈,从源代码到使用方法的每一处细节都经过精心雕琢,非常适合网页界面的快速开发。layui 区别于那些基于 MVVM 底层的前端框架,却并非逆道而行,而是信奉返璞归真之道。准确地说,它更多是面向后端开发者,你无需涉足前端各种工具,只需面对浏览器本身,让一切你所需要的元素与交互,从这里信手拈来。
layui 的checkbox 居然不能用jq上常用的方法控制全选,如下代码不适用
$('#allChecked').change(function(){ $('#box').children(':checkbox').prop('checked',$(this).is(':checked')?true:false); });
layui本身有自己的方法控制 lay-filter,代码如下:
layui.use(['form'], function(){ var form = layui.form(); //全选 form.on('checkbox(allChoose)', function (data) { $("input[name='check[]']").each(function () { this.checked = data.elem.checked; }); form.render('checkbox'); }); //单选 form.on('checkbox(oneChoose)', function (data) { var i = 0; var j = 0; $("input[name='check[]']").each(function () { if( this.checked === true ) { i++; } j++; }); if( i == j ) { $(".checkboxAll").prop("checked",true); form.render('checkbox'); }else { $(".checkboxAll").removeAttr("checked"); form.render('checkbox'); } }); });
看到这基本上可以知道,为什么没反应了吧? 是,少form.render(‘checkbox’);
Html
<tr> <th width="40" ><input type="checkbox" class="checkboxAll" lay-skin="primary" lay-filter="allChoose" ></th> <th width="210">商品名称</th> <th width="160">SKU</th> <th width="70">产品类型</th> <th width="140">价格(元)</th> <th width="140">发布时间</th> <th>操作</th> </tr> <tr> <td><input type="checkbox" name="check[]" value="2" lay-skin="primary" lay-filter="oneChoose"></td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr>