如提
掛在gridview底下 做全選跟單選記憶
<asp:HiddenField ID="hfSelVal" runat="server" />
<asp:GridView ID="gv" runat="server">
<asp:TemplateField >
<HeaderTemplate>
<asp:CheckBox ID="chkAll" runat="server" onclick="chkRemAll(this)" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chk" runat="server" onclick="chkRem(this)" />
</ItemTemplate>
</asp:TemplateField>
</asp:GridView>
//單選
function chkRem(chk) {
var arrayVal = [];
if ($('#<%= hfSelVal.ClientID %>').val() != '') {
arrayVal = $('#<%= hfSelVal.ClientID %>').val().split(','); //記憶的值
}
var chkVal = chk.parentNode.title; //勾選得值
if (chkVal == "") return;
if (chk.checked) { //是否勾選
if (arrayVal.indexOf(chkVal) < 1) { //如果不存在 => 新增
arrayVal.push(chkVal);
}
} else {
arrayVal.splice(arrayVal.indexOf(chkVal), 1); //未勾選 => 移除項目
}
var result = arrayVal.join(',');
$('#<%= hfSelVal.ClientID %>').val(result);
}
//全選
function chkRemAll(chk) {
var arrayVal = []; //目前勾選得值
if ($('#<%= hfSelVal.ClientID %>').val() != '') {
arrayVal = $('#<%= hfSelVal.ClientID %>').val().split(','); //記憶的值
}
var GridView = chk.parentNode.parentNode.parentNode;
var inputList = GridView.getElementsByTagName("input");
for (var i = 0; i < inputList.length; i++) {
var chkVal = inputList[i].parentNode.title;
if (chkVal == "") continue;
if (chk.checked) { //是否勾選
if (arrayVal.indexOf(chkVal) < 1) { //如果不存在 => 新增
arrayVal.push(chkVal);
inputList[i].checked = true;
}
} else {
arrayVal.splice(arrayVal.indexOf(chkVal), 1); //未勾選 => 移除項目
inputList[i].checked = false;
}
}
var result = arrayVal.join(','); //結果
$('#<%= hfSelVal.ClientID %>').val(result);
}
以上文章僅用紀錄資料使用.....