1
using System;
2
using System.Web.UI;
3
using System.Web.UI.WebControls;
4
5
namespace HughLin.Web.UI.WebControls
6
}
2
3
4
5
6
1
function AspNetV2_RestoreCheckBoxGroupValue(group, clientId)
2
{
3
var objArray;
4
try
5
{
6
objArray = eval(group);
7
}
8
catch (e)
9
{
10
return;
11
}
12
if (objArray == null || objArray.length == 0)
13
{
14
return;
15
}
16
var flag = false;
17
var objArray2 = document.getElementById(clientId);
18
if (objArray2 == null || objArray2.value.length == 0)
19
{
20
flag = true;
21
}
22
if (flag)
23
{
24
for (var i = 0; i < objArray.length; i++)
25
{
26
var e = objArray[i];
27
e.checked = false;
28
}
29
}
30
else
31
{
32
var objArray3 = objArray2.value.split(",");
33
for (var i = 0; i < objArray.length; i++)
34
{
35
var e = objArray[i];
36
var flag1 = (objArray3[i].toLowerCase() == "true") ? true : false;
37
e.checked = flag1;
38
}
39
}
40
}
41
42
function AspNetV2_SaveCheckBoxGroupValue(group, clientId)
43
{
44
var objArray;
45
try
46
{
47
objArray = eval(group);
48
}
49
catch (e)
50
{
51
return;
52
}
53
if (objArray == null || objArray.length == 0)
54
{
55
return;
56
}
57
var objValues = objArray[0].checked;
58
for (var i = 1; i < objArray.length; i++)
59
{
60
var e = objArray[i];
61
objValues += "," + objArray[i].checked;
62
}
63
document.getElementById(clientId).value = objValues;
64
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
同样我们将其编译到HughLin.dll中。
使用是我们只需要在第二篇中的代码中加入:
<hlAsp:CheckBoxHidden ID="CheckBoxHidden1" runat="server" Group="UserCheckBoxGroup1" />
注意:Group应当和你的CheckBox控件的Group要相同。
本系列中开发的CheckBox控件有一个好处就是:可以同时在多个GridView中使用,而互相不会干扰,只需设置Group的值不同即可。当然要保存多个GridView的CheckBox控件的状态,必须添加相应的ChekBoxHidden控件。