【发布时间】:2011-11-06 07:02:49
【问题描述】:
当我尝试在 javascript 中对 Telerik Grid 对象调用 .dataBind() 时,它会引发异常。我使用的相同代码在 Telerik 控件的早期版本 (2010.2.930) 上运行良好,但自从更新(使用 NuGet)到最新版本 (2011.2.712) 后,代码已经损坏。
这些是不同浏览器上的各种错误。
Firefox 6: this.dataSource 未定义(telerik.grid.min.js - 第 1 行)
Chrome 13: 未捕获的 TypeError:无法调用方法'未定义的成功(telerik.grid.min.js:1)
IE 9: SCRIPT5007:无法获取属性“成功”的值:对象为空或未定义(telerik.grid .min.js,第 1 行字符 25697)
我已经设法创建了一个非常简单的 repo,你需要做的就是把它放在一个新的页面中:
<div>
@(Html.Telerik().Grid(new List<GridData>())
.Name("TestGrid")
.Columns(column =>
{
column.Bound(e => e.Name).Title("Name").Width("9em");
column.Bound(e => e.Description).Title("Description").Width("9em");
}))
</div>
<p>
<a id="getData" href="#">Bind Data</a>
</p>
<script type="text/javascript">
(function ($) {
$(document).ready(function () {
$('#getData').click(bindGridData);
});
})(jQuery);
var bindGridData = function() {
var grid = $("#TestGrid").data("tGrid");
var testData = [
{ Name: "Name 1", Description: "Description 1" },
{ Name: "Name 2", Description: "Description 2" }
];
grid.dataBind(testData);
};
</script>
GridData 类只是一个简单的 POCO,具有 Name 和 Description 字符串属性。
【问题讨论】:
标签: javascript asp.net-mvc telerik telerik-grid telerik-mvc