3 Answers, 1 is accepted
0

Princy
Top achievements
Rank 2
answered on 11 May 2011, 11:26 AM
Hello,
Try the following client side code to get the selected row count.
Javascript:
Thanks,
Princy.
Try the following client side code to get the selected row count.
Javascript:
<script type=
"text/javascript"
>
function
getSelected()
{
var
RadGrid1 = $find(
"<%=RadGrid1.ClientID %>"
);
alert(
"Number of selected items : "
+ RadGrid1.get_masterTableView().get_selectedItems().length);
}
</script>
Thanks,
Princy.
0

A2H
Top achievements
Rank 1
answered on 11 May 2011, 11:50 AM
Hi Princy,
I am using a template column with check box.
By using your code count is always null,if I select a row using check box in template column.
But if I select a column by clicking on row the count is showing as 1.
I am using a template column with check box.
By using your code count is always null,if I select a row using check box in template column.
But if I select a column by clicking on row the count is showing as 1.
0

Princy
Top achievements
Rank 2
answered on 11 May 2011, 12:41 PM
Hello,
I have also tried the same scenario. Here is the the code that I tried.
aspx:
C#:
Javascript:
It works as expected at my end. Please elaborate your scenario if it doesn't help.
Thanks,
Princy.
I have also tried the same scenario. Here is the the code that I tried.
aspx:
<
telerik:RadGrid
ID
=
"RadGrid1"
runat
=
"server"
AllowPaging
=
"True"
PageSize
=
"5"
Skin
=
"Hay"
DataSourceID
=
"SqlDataSource1"
AllowMultiRowSelection
=
"true"
>
<
MasterTableView
>
<
Columns
>
<
telerik:GridTemplateColumn
UniqueName
=
"CheckBoxTemplateColumn"
>
<
ItemTemplate
>
<
asp:CheckBox
ID
=
"CheckBox1"
runat
=
"server"
OnCheckedChanged
=
"ToggleRowSelection"
AutoPostBack
=
"True"
/>
</
ItemTemplate
>
<
HeaderTemplate
>
<
asp:CheckBox
ID
=
"headerChkbox"
runat
=
"server"
OnCheckedChanged
=
"ToggleSelectedState"
AutoPostBack
=
"True"
/>
</
HeaderTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
asp:Button
runat
=
"server"
ID
=
"button1"
OnClientClick
=
"getSelected();"
Text
=
"getSelected"
/>
C#:
protected
void
ToggleRowSelection(
object
sender, EventArgs e)
{
((sender
as
CheckBox).NamingContainer
as
GridItem).Selected = (sender
as
CheckBox).Checked;
bool
checkHeader =
true
;
foreach
(GridDataItem dataItem
in
RadGrid1.MasterTableView.Items)
{
if
(!(dataItem.FindControl(
"CheckBox1"
)
as
CheckBox).Checked)
{
checkHeader =
false
;
break
;
}
}
GridHeaderItem headerItem = RadGrid1.MasterTableView.GetItems(GridItemType.Header)[0]
as
GridHeaderItem;
(headerItem.FindControl(
"headerChkbox"
)
as
CheckBox).Checked = checkHeader;
}
protected
void
ToggleSelectedState(
object
sender, EventArgs e)
{
CheckBox headerCheckBox = (sender
as
CheckBox);
foreach
(GridDataItem dataItem
in
RadGrid1.MasterTableView.Items)
{
(dataItem.FindControl(
"CheckBox1"
)
as
CheckBox).Checked = headerCheckBox.Checked;
dataItem.Selected = headerCheckBox.Checked;
}
}
Javascript:
function
getSelected()
{
var
RadGrid1 = $find(
"<%=RadGrid1.ClientID %>"
);
alert(
"Number of selected items : "
+ RadGrid1.get_masterTableView().get_selectedItems().length);
}
It works as expected at my end. Please elaborate your scenario if it doesn't help.
Thanks,
Princy.