Tuesday, October 27, 2009

CheckBox in Gridview for Select All With JavaScript

///JAVA SCRIPT CODE////
function ChangeCheckBoxState(id, checkState)
{
var cb = document.getElementById(id);
if (cb != null)
cb.checked = checkState;
}

function ChangeAllCheckBoxStates(checkState)
{
// Toggles through all of the checkboxes defined in the CheckBoxIDs array
// and updates their value to the checkState input parameter
if (CheckBoxIDs != null)
{
for (var i = 0; i < CheckBoxIDs.length; i++)
ChangeCheckBoxState(CheckBoxIDs[i], checkState);
}
}

function ChangeHeaderAsNeeded()
{
// Whenever a checkbox in the GridView is toggled, we need to
// check the Header checkbox if ALL of the GridView checkboxes are
// checked, and uncheck it otherwise
if (CheckBoxIDs != null)
{
// check to see if all other checkboxes are checked
for (var i = 1; i < CheckBoxIDs.length; i++)
{
var cb = document.getElementById(CheckBoxIDs[i]);
if (!cb.checked)
{
// Whoops, there is an unchecked checkbox, make sure
// that the header checkbox is unchecked
ChangeCheckBoxState(CheckBoxIDs[0], false);
return;
}
}

// If we reach here, ALL GridView checkboxes are checked
ChangeCheckBoxState(CheckBoxIDs[0], true);
}
}
///////////////////////
Then add Custome column in Gridview and Put this column Inside gridview
and columns tag//////









///Take one Literal Control Also Outside the Gridview////

////Now Comes to Code Behind file and Write this code in Databound event of Gridview///
protected void grdmanagejobs_DataBound(object sender, EventArgs e)
{
CheckBox cbHeader = (CheckBox)grdmanagejobs.HeaderRow.FindControl("HeaderLevelCheckBox");
cbHeader.Attributes["onclick"] = "ChangeAllCheckBoxStates(this.checked);";
List ArrayValues = new List();
ArrayValues.Add(string.Concat("'", cbHeader.ClientID, "'"));
foreach (GridViewRow gvr in grdmanagejobs.Rows)
{
CheckBox cb = (CheckBox)gvr.FindControl("RowLevelCheckBox");
cb.Attributes["onclick"] = "ChangeHeaderAsNeeded();";
ArrayValues.Add(string.Concat("'", cb.ClientID, "'"));
}
// CheckBoxIDsArray.Text = "script type=\"text/javascript\">" + Microsoft.VisualBasic.Constants.vbCrLf + "" + Microsoft.VisualBasic.Constants.vbCrLf + "";
CheckBoxIDsArray.Text = "";
}

No comments:

Post a Comment