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

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值