Hi,
How to get list of id of selected checkbox in radgrid on button click?
Source:
What will be the code on save button click to get the list of UserID releted to the checked checkbox row?
Thanks
How to get list of id of selected checkbox in radgrid on button click?
Source:
<
telerik:RadGrid
ID
=
"gv1"
runat
=
"server"
>
<
MasterTableView
DataKeyNames
=
"UserId"
>
<
Columns
>
<
telerik:GridTemplateColumn
>
<
ItemTemplate
>
<
asp:CheckBox
ID
=
"CheckBox1"
runat
=
"server"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
What will be the code on save button click to get the list of UserID releted to the checked checkbox row?
Thanks
13 Answers, 1 is accepted
0
Shinu
Top achievements
Rank 2
answered on 06 Aug 2013, 11:21 AM
Hi Swapnil,
Please have a look into the following code I tried which works fine at my end.
ASPX:
Thanks,
Shinu.
Please have a look into the following code I tried which works fine at my end.
ASPX:
protected
void
RadButton1_Click(
object
sender, EventArgs e)
{
foreach
(GridDataItem item
in
gv1.MasterTableView.Items)
{
CheckBox chk = (CheckBox)item.FindControl(
"CheckBox1"
);
if
(chk.Checked ==
true
)
{
string
ID = item.GetDataKeyValue(
"DataKeyNameString"
).ToString();
}
}
}
Thanks,
Shinu.
0
Swapnil
Top achievements
Rank 1
answered on 08 Aug 2013, 04:58 AM
I tried with this code
but while debugging it is not going inside IF condition and chk value is given as checked="false"
Thanks
<
telerik:RadGrid
ID
=
"gv1"
runat
=
"server"
>
<
MasterTableView
DataKeyNames
=
"UserName"
>
<
Columns
>
<
telerik:GridTemplateColumn
>
<
ItemTemplate
>
<
asp:CheckBox
ID
=
"CheckBox1"
runat
=
"server"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
protected void btnsave_Click(object sender, EventArgs e)
{
foreach (GridDataItem item in gv1.MasterTableView.Items)
{
CheckBox chk = (CheckBox)item.FindControl("CheckBox1");
if (chk.Checked == true)
{
string ID = item.GetDataKeyValue("UserName").ToString();
}
}
}
Thanks
0
Swapnil
Top achievements
Rank 1
answered on 08 Aug 2013, 05:01 AM
I tried this but debugger not going inside if condition and value of chk is shown as checked=false even if i checked the checkbox
and
<
telerik:RadGrid
ID
=
"gv1"
runat
=
"server"
>
<
MasterTableView
DataKeyNames
=
"UserName"
>
<
Columns
>
<
telerik:GridTemplateColumn
>
<
ItemTemplate
>
<
asp:CheckBox
ID
=
"CheckBox1"
runat
=
"server"
/>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
protected void btnsave_Click(object sender, EventArgs e)
{
foreach (GridDataItem item in gv1.MasterTableView.Items)
{
CheckBox chk = (CheckBox)item.FindControl("CheckBox1");
if (chk.Checked == true)
{
string ID = item.GetDataKeyValue("UserName").ToString();
}
}
}
0
Shinu
Top achievements
Rank 2
answered on 08 Aug 2013, 12:21 PM
Hi Swapnil,
Unfortunately I couldn't replicate the issue at my end.
Thanks,
Shinu.
Unfortunately I couldn't replicate the issue at my end.
Thanks,
Shinu.
0
Fuhai
Top achievements
Rank 1
answered on 08 Aug 2013, 12:40 PM
Hey,
your code looks ok, the check box item in client side maybe not working as expected, try to use this line for clientidmode. and let me know if it is working for you.
your code looks ok, the check box item in client side maybe not working as expected, try to use this line for clientidmode. and let me know if it is working for you.
<ItemTemplate>
<asp:CheckBox ID="chbAttached" runat="server" ClientIDMode="AutoID" ></asp:CheckBox>
</ItemTemplate>
0
Swapnil
Top achievements
Rank 1
answered on 12 Aug 2013, 04:50 AM
This also doesnt work for me ,i added the line ClientIDMode="AutoID" but it also not doing nothing
main problem is while debugging the code on button click the debugger is not going inside if condition and each time the checkbox checked is given false
main problem is while debugging the code on button click the debugger is not going inside if condition and each time the checkbox checked is given false
protected void btnsave_Click(object sender, EventArgs e)
{
foreach (GridDataItem item in gv1.MasterTableView.Items)
{
CheckBox chk = (CheckBox)item.FindControl("CheckBox1");
if (chk.Checked == true)
{
string ID = item.GetDataKeyValue("UserName").ToString();
}
}
}
0
Princy
Top achievements
Rank 2
answered on 12 Aug 2013, 06:28 AM
Hi Swapnil,
I have tried the above code and it works fine at my end.See the below code snippet.Can you make sure that you are able to access the checkbox using breakpoints.Can you please provide your full code.
ASPX:
C#:
Thanks,
Princy
I have tried the above code and it works fine at my end.See the below code snippet.Can you make sure that you are able to access the checkbox using breakpoints.Can you please provide your full code.
ASPX:
<
telerik:RadGrid
ID
=
"RadGrid1"
runat
=
"server"
>
<
MasterTableView
DataKeyNames
=
"OrderID"
>
<
Columns
>
<
telerik:GridTemplateColumn
>
<
ItemTemplate
>
<
asp:CheckBox
ID
=
"CheckBox1"
runat
=
"server"
ClientIDMode
=
"AutoID"
></
asp:CheckBox
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
asp:Button
ID
=
"Button1"
runat
=
"server"
Text
=
"Save"
OnClick
=
"Button1_Click"
/>
C#:
protected
void
Button1_Click(
object
sender, EventArgs e)
{
foreach
(GridDataItem item
in
RadGrid1.MasterTableView.Items)
{
CheckBox chk = (CheckBox)item.FindControl(
"CheckBox1"
);
if
(chk.Checked ==
true
)
{
string
ID = item.GetDataKeyValue(
"OrderID"
).ToString();
}
}
}
Thanks,
Princy
0
Swapnil
Top achievements
Rank 1
answered on 12 Aug 2013, 06:46 AM
Hi Princy,
Same problem not able to figure out
here is my code
and
Thanks
Same problem not able to figure out
here is my code
<%@ Page Title="" Language="C#" MasterPageFile="~/ReportAdmin.Master" AutoEventWireup="true"
CodeFile="GroupUserCreation.aspx.cs" Inherits="GroupUserCreation" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"head"
runat
=
"Server"
>
</
asp:Content
>
<
asp:Content
ID
=
"Content2"
ContentPlaceHolderID
=
"ContentPlaceHolder1"
runat
=
"Server"
>
<
center
>
<
telerik:RadComboBox
ID
=
"cmbgroupname"
runat
=
"server"
Width
=
"200px"
EmptyMessage
=
" Select Group"
Skin
=
"Default"
>
</
telerik:RadComboBox
>
<
br
/>
<
br
/>
<
telerik:RadGrid
ID
=
"gv1"
runat
=
"server"
>
<
MasterTableView
DataKeyNames
=
"UserId"
>
<
Columns
>
<
telerik:GridTemplateColumn
>
<
ItemTemplate
>
<
asp:CheckBox
ID
=
"CheckBox1"
runat
=
"server"
ClientIDMode
=
"AutoID"
></
asp:CheckBox
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
asp:Button
ID
=
"Button1"
runat
=
"server"
Text
=
"Save"
OnClick
=
"Button1_Click"
/>
<
br
/>
</
center
>
</
asp:Content
>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
using Telerik.Web.UI;
using System.Collections;
public partial class GroupUserCreation : System.Web.UI.Page
{
Globas obj = new Globas();
CheckBox chkbox = new CheckBox();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
}
DataTable dt = obj.UserDetails();
gv1.DataSource = dt;
gv1.DataBind();
DataTable dt1 = obj.GroupDetails();
cmbgroupname.DataSource = dt1;
cmbgroupname.DataTextField = "GroupName";
cmbgroupname.DataValueField = "GroupId";
cmbgroupname.DataBind();
}
protected void Button1_Click(object sender, EventArgs e)
{
foreach (GridDataItem item in gv1.MasterTableView.Items)
{
CheckBox chk = (CheckBox)item.FindControl("CheckBox1");
if (chk.Checked == true)
{
string ID = item.GetDataKeyValue("UserId").ToString();
}
}
}
}
0
Accepted
Princy
Top achievements
Rank 2
answered on 12 Aug 2013, 07:23 AM
Hi Swapnil,
Please bind the RadGrid using NeedDataSource event and in the page load if you want to bind the RadComboBox,please try it inside the
if(!IsPostBack).The post back is causing the checkbox to return to its normal state,which is uncheck,that's why,the condition is always false.
Thanks,
Princy
Please bind the RadGrid using NeedDataSource event and in the page load if you want to bind the RadComboBox,please try it inside the
if(!IsPostBack).The post back is causing the checkbox to return to its normal state,which is uncheck,that's why,the condition is always false.
Thanks,
Princy
0
Swapnil
Top achievements
Rank 1
answered on 12 Aug 2013, 07:46 AM
above code working fine but by using this code i can check all checkboxes
and
but its giving error as object reference not set to an instance of object please give some solution
thnks in advance
<
telerik:RadGrid
ID
=
"gv1"
runat
=
"server"
AllowMultiRowSelection
=
"true"
onneeddatasource
=
"RadGrid1_NeedDataSource"
>
<
ClientSettings
Selecting-AllowRowSelect
=
"true"
>
</
ClientSettings
>
<
MasterTableView
DataKeyNames
=
"UserId"
>
<
Columns
>
<
telerik:GridClientSelectColumn
UniqueName
=
"ClientSelectColumn"
/>
</
Columns
>
</
MasterTableView
>
</
telerik:RadGrid
>
<
asp:Button
ID
=
"Button1"
runat
=
"server"
Text
=
"Save"
OnClick
=
"Button1_Click"
/>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataTable dt1 = obj.GroupDetails();
cmbgroupname.DataSource = dt1;
cmbgroupname.DataTextField = "GroupName";
cmbgroupname.DataValueField = "GroupId";
cmbgroupname.DataBind();
}
}
protected void Button1_Click(object sender, EventArgs e)
{
foreach (GridDataItem item in gv1.MasterTableView.Items)
{
CheckBox chk = (CheckBox)item.FindControl("CheckBox1");
if (chk.Checked == true)
{
int ID =Convert.ToInt32 (item.GetDataKeyValue("UserId").ToString());
}
}
}
protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
DataTable dt = obj.UserDetails();
gv1.DataSource = dt;
}
but its giving error as object reference not set to an instance of object please give some solution
thnks in advance
0
Swapnil
Top achievements
Rank 1
answered on 12 Aug 2013, 07:57 AM
Thanks for the help Princy
got the solution
got the solution
0
Siddharth
Top achievements
Rank 1
answered on 13 Aug 2015, 08:18 PM
In the similar scenario , how to get the id of unselected(deselected) row?
0
Hello Siddharth,
There are several different approaches you can use in order to achieve this requirement. This can be done either on client-side using the OnRowDeselected event handler or on server-side using the ItemCommand event handler after enabling the EnablePostBackOnRowClick property.
Let me know if you want the solution to be on server or client-side and I will prepare a sample runnable web site for your convenience and send it to you.
Regards,
Eyup
Telerik
There are several different approaches you can use in order to achieve this requirement. This can be done either on client-side using the OnRowDeselected event handler or on server-side using the ItemCommand event handler after enabling the EnablePostBackOnRowClick property.
Let me know if you want the solution to be on server or client-side and I will prepare a sample runnable web site for your convenience and send it to you.
Regards,
Eyup
Telerik
Do you want to have your say when we set our development plans?
Do you want to know when a feature you care about is added or when a bug fixed?
Explore the
Telerik Feedback Portal
and vote to affect the priority of the items