我在我的页面上有一个弧形网格和一个rad标签条,要求是当用户点击rad网格中的任意一行时,特定行的所有细节都必须填入rad标签条。我填充rad标签条的函数是用jquery编写的。我的问题是如何获得弧形网格中的物品。我写了Rad Grid + jquery
var grid = $find("RadGrid1")
var items = grid.items.count;
它给了我一个错误。我怎样才能解决这个问题?
我在我的页面上有一个弧形网格和一个rad标签条,要求是当用户点击rad网格中的任意一行时,特定行的所有细节都必须填入rad标签条。我填充rad标签条的函数是用jquery编写的。我的问题是如何获得弧形网格中的物品。我写了Rad Grid + jquery
var grid = $find("RadGrid1")
var items = grid.items.count;
它给了我一个错误。我怎样才能解决这个问题?
尝试封装的var grid = $find("RadGrid1")
在$(文件)。就绪()函数的
$(document).ready(function() {
var grid = $find("RadGrid1");
});
到ASP.NET对象的客户端引用的页面生成的最后的创建,所以你必须等到做到这一点之前,$找到可以给你你正在寻找
参考与这里的Telerik的网格的客户端API还熟悉: http://www.telerik.com/help/aspnet-ajax/grdgettingfamiliarwithclientapi.html
迪克
您可以通过使用MasterTableView.ClientDataKeyNames属性来指定要访问的键,以访问所选项目的值。您可以通过调用getDataKeyValues("KeyName")
访问客户端OnRowSelected事件期间的值。这里有一个例子:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="RadGridCustomFooter._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>RadGrid Example</title>
<script src="Scripts/jquery-1.3.2.js" type="text/javascript"></script>
</head>
<body>
<form id="form1" runat="server">
<telerik:RadScriptManager ID="RadScriptManager1" runat="server" />
<telerik:RadGrid ID="rgCustomers" runat="server" Skin="Black"
AllowPaging="true"
AllowSorting="true"
PageSize="8">
<ClientSettings>
<ClientEvents OnRowSelected="grid_rowSelected" />
<Selecting AllowRowSelect="true" />
</ClientSettings>
<MasterTableView
ClientDataKeyNames="ID,Name,Address,Sales">
<Columns>
<telerik:GridBoundColumn
DataField="ID"
UniqueName="ID">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn
DataField="Name"
UniqueName="Name">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn
DataField="Address"
UniqueName="Address">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn
DataField="Sales"
DataFormatString="{0:C}"
UniqueName="Sales">
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
<SelectedItemStyle CssClass="none" />
</telerik:RadGrid>
<div id="results"></div>
<script type="text/javascript">
function grid_rowSelected(sender, args) {
var id = args.getDataKeyValue("ID");
var name = args.getDataKeyValue("Name");
var address = args.getDataKeyValue("Address");
var sales = args.getDataKeyValue("Sales");
var selectedValues = String.format("ID: {0}, Name: {1}, Address: {2}, Sales: {3}", id, name, address, sales);
$('#results').html(selectedValues);
}
</script>
</form>
</body>
</html>
而这里的隐藏代码:
using System;
using Telerik.Web.UI;
namespace RadGridCustomFooter
{
public partial class _Default : System.Web.UI.Page
{
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
rgCustomers.NeedDataSource += new GridNeedDataSourceEventHandler((s, a) =>
{
var customers = new[] {
new { ID = 1, Name = "Acme Products", Address = "123 Maple Drive", Sales = 23450 },
new { ID = 2, Name = "Northwind", Address = "1 First Street", Sales = 11569 },
new { ID = 3, Name = "Alverson Utilities", Address = "890 Union Avenue", Sales = 78232 },
new { ID = 4, Name = "Creative Solutions", Address = "91223 Texas Drive", Sales = 110058 },
new { ID = 5, Name = "Northwind", Address = "1 First Street", Sales = 11569 },
new { ID = 6, Name = "Alverson Utilities", Address = "890 Union Avenue", Sales = 78232 },
new { ID = 7, Name = "Northwind", Address = "1 First Street", Sales = 11569 },
new { ID = 8, Name = "Acme Products", Address = "123 Maple Drive", Sales = 23450 },
new { ID = 9, Name = "Creative Solutions", Address = "91223 Texas Drive", Sales = 110058 },
new { ID = 10, Name = "Northwind", Address = "1 First Street", Sales = 11569 },
new { ID = 11, Name = "Alverson Utilities", Address = "890 Union Avenue", Sales = 78232 },
new { ID = 12, Name = "Acme Products", Address = "123 Maple Drive", Sales = 23450 },
new { ID = 13, Name = "Creative Solutions", Address = "91223 Texas Drive", Sales = 110058 }
};
((RadGrid)s).DataSource = customers;
});
}
}
}
退房的documentation here了解更多详情。