My first post on the forum.
In my custom web part, I need to do "Select All" fucntionality for check boxes . i.e. checking check/unchecking a box would check/uncheck other boxes. This needs to be done on the client side. But every time I check the box , document.getElementById(checkbox.ClientID) comes out to be null. Any help in this regard is highly appreciated. Please take a look at the code :
protected override void CreateChildControls()
{
base.CreateChildControls();
csManager =
this.Page.ClientScript;
_chkboxList =
new CheckBoxList();
_chkSelectAll =
new CheckBox();
_chkSelectAll.Text =
"Select All";
if (!csManager.IsClientScriptBlockRegistered(typeof(Page), "checkboxes"))
{ //csManager.RegisterClientScriptBlock(typeof(Page), "checkboxes", jsCheckAll)
//even tried doing
csManager.RegisterStartupScript(typeof(Page), "checkboxes", jsCheckAll);
}
}
protected override void RenderContents(HtmlTextWriter writer)
{ AddAttributesToRender(writer); writer.Write(
"<table style='BorderStyle:Hidden'>");
//Header
writer.Write(
"<tr>");
writer.Write(
"<td>");
_lblHeader.RenderControl(writer); writer.Write(
"</td>");
writer.Write(
"</tr>");
writer.Write(
"<tr>");
writer.Write(
"<td>");
btnGetFiles.RenderControl(writer); writer.Write(
"</td>");
writer.Write(
"</tr>");
writer.Write(
"<tr>");
writer.Write(
"<td>");
_lblMsg.RenderControl(writer); writer.Write(
"</td>");
writer.Write(
"</tr>");
writer.Write(
"<tr>");
writer.Write(
"<td>");
btnMerge.RenderControl(writer); writer.Write(
"</td>");
writer.Write(
"</tr>");
writer.Write(
"<tr>");
writer.Write(
"<td>");
_chkboxList.RenderControl(writer); _chkSelectAll.Attributes.Add(
"OnClick", string.Format("javascript:FinalFunctioChkBox(document.getElementById({0}),{1})", _chkboxList.ClientID, chkboxList.Items.Count));
writer.Write(
"</td>");
writer.Write(
"</tr>");
writer.Write(
"<tr>");
writer.Write(
"<td>");
_chkSelectAll.RenderControl(writer); writer.Write(
"</td>");
writer.Write(
"</tr>");
writer.Write(
"<tr>");
writer.Write(
"<td>");
txtMissingFiles.RenderControl(writer); writer.Write(
"</td>");
writer.Write(
"</tr>");
writer.Write(
"</table>");
}
Thanks in advance
-Aj