孟子大哥,我想用javascript在客户端实现gridview的全选。其中gridview中第一列的有些checkbox是禁止选择了的(disabled="disabled"),该怎样实现全选的时候让那些禁止选择的的checkbox 不被选中呢?我用你网站上的那个例子只能全选,我想让那些被禁止选择的checkbox不能被选择 function CheckAll(obj)
{
var grid = $("<%= gvList.ClientID%>");
for (var i=0;i<grid.rows.length;i++)
{
if (grid.rows[i].cells[0].getElementsByTagName("INPUT")[0].disabled == "disabled")
{
grid.rows[i].cells[0].getElementsByTagName("INPUT")[0].checked = false;//这样写不行,这里该怎么写啊?
}
else
{
grid.rows[i].cells[0].getElementsByTagName("INPUT")[0].checked = obj.checked;
}
}
}<asp:GridView ID="gvList" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:CheckBox ID="chkAll" runat="server" onclick="CheckAll(this);" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chk" runat="server" Enabled="false" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Id" HeaderText="Id" />
</Columns>
</asp:GridView>
{
var grid = $("<%= gvList.ClientID%>");
for (var i=0;i<grid.rows.length;i++)
{
if (grid.rows[i].cells[0].getElementsByTagName("INPUT")[0].disabled == "disabled")
{
grid.rows[i].cells[0].getElementsByTagName("INPUT")[0].checked = false;//这样写不行,这里该怎么写啊?
}
else
{
grid.rows[i].cells[0].getElementsByTagName("INPUT")[0].checked = obj.checked;
}
}
}<asp:GridView ID="gvList" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:CheckBox ID="chkAll" runat="server" onclick="CheckAll(this);" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chk" runat="server" Enabled="false" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Id" HeaderText="Id" />
</Columns>
</asp:GridView>
改为 ==true 试试.<div id="div1">
<input type="checkbox" id="c1" disabled="true" />aa
<br/>
<input type="checkbox" id="c2" />bb
</div>
<script>
var obj = document.getElementById("div1");
var objs=document.getElementsByTagName("input");
for(var i=0;i<objs.length;i++)
{
if(objs[i].disabled!=true)
objs[i].checked=true;
}
</script>