Yii使用renderPartial绘制的CGridView中checkall功能无效
使用renderPartial方法和render方法的主要区别在于前者没有加载layout,
在renderPartial方法中注册的yiigridview相关js脚本得不到执行,而render方法则无此问题。
通常renderPartial和ajax调用结合来绘制和更新局部界面或展现一个弹出对话框。
那么可以在该局部界面或对话框所在的完整页面中添加相应的脚本,比如checkall功能:
<script type="text/javascript">//this script is a hack for gridview checkall not working with render partial jQuery(document).on("click","#your_grid_c0_all",function() { var checked=this.checked; jQuery("input[name="id[]"]:enabled").each(function() {this.checked=checked;}); }); jQuery(document).on("click", "input[name="id[]"]", function() { jQuery("#your_grid_c0_all").prop("checked", jQuery("input[name="id[]"]").length==jQuery("input[name="id[]"]:checked").length); });
by iefreer
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: Yii render和renderPartial的区别
- 下一篇: C#截取指定字符串的方法