using System;
using System.Collections.Generic;
using System.Text;
namespace YYControls.SmartGridView
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
/// <summary>
/// javascript
/// </summary>
public class JavaScriptConstant
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
internal const string jsCheckAll =
@"<script type=""text/javascript"">
//<![CDATA[
// 隐藏字段的ID,用于存每组的全选复选框ID ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
var hdnAllName = '[$AllName$]';
// 隐藏字段的ID,用于存每的项复选框ID ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
var hdnItemName = '[$ItemName$]';
// 组分隔符,一个 全选复选框 和其对应的n个 项复选框 为一个组 ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
var groupSeparator = '[$GroupSeparator$]';
// 项分隔符,项复选框 每个项之间的分隔符 ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
var itemSeparator = '[$ItemSeparator$]';
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
var strAlls = GetObject(hdnAllName).value;
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
var strItems = GetObject(hdnItemName).value;
// 全选复选框数组 ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
var aryAlls = strAlls.split(groupSeparator);
// 项复选框数组,每行有一个组的所有项复选框 ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
var aryItems = strItems.split(groupSeparator);
// 全选复选框被单击,参数为 该全选复选框这个对象 ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
function ClickCheckAll(objAll)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
// 每个全选复选框
for (var i=0; i<aryAlls.length; i++)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
// 该全选复选框是所单击的全选复选框
if (aryAlls[i] == objAll.id)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
// 该全选复选框同组下的项复选框数组 ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
aryItem = aryItems[i].split(itemSeparator);
for (var j=0; j<aryItem.length; j++)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
// 单击的全选复选框是选中状态,并且项复选框不是disabled,则选中
if (objAll.
checked && !GetObject(aryItem[j]).parentElement.disabled)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
GetObject(aryItem[j]).
checked =
true;
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
// 否则
else ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
GetObject(aryItem[j]).
checked =
false;
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
break;
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
// 项复选框被单击 ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
function ClickCheckItem()
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
// 每组项复选框
for (var i=0; i<aryItems.length; i++)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
// 该组的所有项复选框数组 ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
aryItem = aryItems[i].split(itemSeparator);
// 标记,是否同组的项复选框都被选中 ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
var bln =
true;
for (var j=0; j<aryItem.length; j++)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
// 如果该项复选框没被选中,并且不是disabled,则bln设为false
if (!GetObject(aryItem[j]).
checked && !GetObject(aryItem[j]).parentElement.disabled)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
bln =
false;
break;
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
// bln为true,则设置同组的全选复选框为选中
if (bln)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
GetObject(aryAlls[i]).
checked =
true;
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
// 否则
else ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
GetObject(aryAlls[i]).
checked =
false;
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
function GetObject(param)
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
{
return document.getElementById(param);
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
//]]> ![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
</script>";
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}
![扩展GridView控件(4) - 联动复选框(复选框的全选和取消全选)](https://s1.51cto.com/images/editer/InBlock.gif)
}