牛骨文教育服务平台(让学习变的简单)
博文笔记

Yii使用renderPartial绘制的CGridView中checkall功能无效

创建时间:2014-11-12 投稿人: 浏览次数:1913

使用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
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。