很多時候我們都需要在GridView用到Checkbox控件,用來選擇記錄并且要取到某列的值,用JavaScript
的document.getElementById("控件ID")没办法拿到服务器控件Checkbox的ID值.因为这些checkbox都会被IE解释成
ctl00_contentPlaceHolder1_givUserMaster_ctl04_chkselect,但可以用以下方法取到:
//gridview的模板列
<asp:TemplateField >
<ItemTemplate>
<asp:CheckBox ID="chkSelect" runat="server" />
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" Width="10px" />
</asp:TemplateField>
//JavaScript的function获取被选择记录的第一列的值
function getNo()
{ var obj = document.getElementById("<%=gridview.ClientID %>"); //gridview為你gridview的名稱
var count=0;
var strNo="";
for(var i = 1;i < obj.rows.length; i++)
{
if(obj.rows[i].cells[0].getElementsByTagName("INPUT")[0].checked)
{ count=count+1;
strNo=obj.rows[i].cells[1].innerText;
}
}
}