This is a migrated thread and some comments may be shown as answers.

How to get radgrid item in client side

6 Answers 1338 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Dhamodharan
Top achievements
Rank 1
Dhamodharan asked on 08 Mar 2011, 11:13 AM
Hi,

I am using radgrid. i used label, radcombobox and radbutton(checkbox). i want when i clicking checkbox whole items(rows) background color want to display in client side. and also same item label value want get. both are client side.

so please tell me 1. how to set background selected textbox 2. how to get another control value for selected check box

 I have attached screen shot also. please check and give me a tips.



Thanks in advance,
Dhamu

6 Answers, 1 is accepted

Sort by
0
Princy
Top achievements
Rank 2
answered on 08 Mar 2011, 12:03 PM
Hello Dhamu,

Try the following code snippet to set background color for row of selected checkbox. Also it shows how to get the Label value from client side.
ASPX:
<telerik:GridTemplateColumn>
    <ItemTemplate>
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
    </ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridTemplateColumn>
    <ItemTemplate>
        <asp:CheckBox ID="CheckBox1" runat="server" />
    </ItemTemplate>
</telerik:GridTemplateColumn>

C#:
protected void RadGrid2_ItemCreated(object sender, GridItemEventArgs e)
   {
       if (e.Item is GridDataItem)
       {
           GridDataItem item = (GridDataItem)e.Item;
           CheckBox chkBox = (CheckBox)item.FindControl("CheckBox1");
           chkBox.Attributes.Add("onclick", "clicked_chkBox('" + item.ItemIndex + "')");
       }
   }
<script type="text/javascript">
    function  clicked_chkBox(index)
     {
        var grid = $find("<%=RadGrid2.ClientID %>");
        var MasterTable = grid.get_masterTableView();
        var row = MasterTable.get_dataItems()[index];
       var label_text = row.findElement("Label1").innerHTML;//getting label value
       row._element.style.backgroundColor= "red";
        row._element.style.backgroundImage = "none";
     }
</script>

Thanks,
Princy.
0
Dhamodharan
Top achievements
Rank 1
answered on 08 Mar 2011, 01:35 PM
Hi Princy,

Thanks your reply. i am getting item and control also.

i have get radcombobox like row.findElement("ddlCoverage")

but how i disable the radcombobox in client side.

i am using row.findElement("ddlCoverage").disabled=true;  but it is not working correctly.

Please give me a tips.


Thanks in advance,
Dhamu
0
Accepted
Shinu
Top achievements
Rank 2
answered on 08 Mar 2011, 01:58 PM
Hello,

Since you are using RadComboBox, try the following code snippet to disable it.

Java Script:
<script type="text/javascript">
     function  clicked_chkBox(index)
     {
        var grid = $find("<%=RadGrid2.ClientID %>");
        var MasterTable = grid.get_masterTableView();
         var row = MasterTable.get_dataItems()[index];
         row.findControl("ddlCoverage").set_enabled(false);
     }
</script>

For information on this, refer the following documentation.
findControl()

-Shinu.
0
Dhamodharan
Top achievements
Rank 1
answered on 08 Mar 2011, 02:06 PM
Hi Shinu,

It is working fine. but i want item_created event on client side. because if already saved record comes from db. so i want hide if checkbox cheked in item created.

is it possible?.

if i did once server side i am not able to enable on client side.

Please give me tips


Thanks,
Dhamu.
0
Accepted
Shinu
Top achievements
Rank 2
answered on 09 Mar 2011, 10:45 AM
Hello,

If you want to enable/disable radComboBox based on CheckBox value, try the following code snippet.
ASPX:
<telerik:GridTemplateColumn>
            <ItemTemplate>
                <telerik:RadComboBox ID="ddlCoverage" runat="server" >
                </telerik:RadComboBox>
            </ItemTemplate>
        </telerik:GridTemplateColumn>
        <telerik:GridTemplateColumn>
            <ItemTemplate>
                <asp:CheckBox ID="CheckBox1" runat="server" Checked='<%#Eval("isapproved") %>' />
            </ItemTemplate>
        </telerik:GridTemplateColumn>
    </Columns>
</MasterTableView>
<ClientSettings>
    <ClientEvents OnRowCreated="RowCreated"  />
</ClientSettings>
</telerik:RadGrid>

Java Script:
<script type="text/javascript">
     function RowCreated(sender, eventArgs) {
        var row = eventArgs.get_gridDataItem();
        var checkbox = row.findElement("CheckBox1");
        row.findControl("ddlCoverage").set_enabled(checkbox.checked);
       }
</script>

-Shinu.
0
Dhamodharan
Top achievements
Rank 1
answered on 09 Mar 2011, 11:51 AM
Hi Shinu,

Thanks your reply.

It is working fine. but i have one important work.

http://www.telerik.com/community/forums/aspnet-ajax/grid/item-requested-not-working-in-radgrid.aspx

Please check this link and let me know how to get label value when radcombobox onclientselectedindexchanged into radgrid using Itemrequestd.

Please give me a tips.


Thanks,
Dhamu
Tags
Grid
Asked by
Dhamodharan
Top achievements
Rank 1
Answers by
Princy
Top achievements
Rank 2
Dhamodharan
Top achievements
Rank 1
Shinu
Top achievements
Rank 2
Share this question
or