0

我正在使用RadGrid.

在其插入模式中。我有RadTextBoxLabel. 所以我想做的就是当我写到RadTextBox它并失去焦点时。应该调用一个函数,该函数从数据库中检索数据并将其分配给该插入模式内的标签。

所以我无法访问插入模式中的控件。我应该如何在 textchange 事件上调用函数,RadTextBox以及如何Label在该插入模式中访问并获取一些数据并分配给它?

4

1 回答 1

0

请检查下面的代码片段。请在您的项目/页面中添加 Jquery 参考。

.js

  function ValueChanged(sender, eventArgs) {

            var newvalueoftextbox = eventArgs.get_newValue();

            var id = sender.get_id();
            id = id.replace("RadTextBox1", "Label1");
            var Label1 = $get(id);
            // your logic come here - get value from DB
            Label1.innerHTML = "Your Value";
        }

.aspx

 <telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="False" AllowCustomPaging="True"
        OnNeedDataSource="RadGrid1_NeedDataSource" GridLines="None" ShowGroupPanel="True"
        OnItemDataBound="RadGrid1_ItemDataBound">
        <MasterTableView CommandItemDisplay="Top">
            <Columns>
                <telerik:GridBoundColumn DataField="Name" UniqueName="Name" HeaderText="Name">
                </telerik:GridBoundColumn>
                <telerik:GridTemplateColumn>
                    <EditItemTemplate>
                        <telerik:RadTextBox ID="RadTextBox1" runat="server">
                        <ClientEvents OnValueChanged="ValueChanged" />
                        </telerik:RadTextBox>
                        <asp:Label ID="Label1" runat="server"></asp:Label>
                    </EditItemTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridEditCommandColumn>
                </telerik:GridEditCommandColumn>
            </Columns>
        </MasterTableView>
    </telerik:RadGrid>

.aspx.cs

protected void RadGrid1_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
{
    dynamic data = new[] {
            new { ID = 1, Name ="Name_1"},
            new { ID = 2, Name = "Name2"},
            new { ID = 3, Name = "Name3"},
            new { ID = 4, Name = "Name4"},
            new { ID = 5, Name = "Name5"}
        };
    RadGrid1.DataSource = data;
}
于 2012-06-16T08:41:26.603 回答