jquery在DOM中为剑道网格返回意外类型

Posted

技术标签:

【中文标题】jquery在DOM中为剑道网格返回意外类型【英文标题】:jquery returning unexpected type for Kendo grid in DOM 【发布时间】:2014-12-25 08:29:00 【问题描述】:

我有一个剑术MVC网格在一个.vbhtml视图:

@(Html.Kendo().Grid(Of RTFVM)(Model).Name("RealTimeFinancials") _
 .Columns(Sub(c)
                  c.Bound(Function(x) x.Line.LineItem).HtmlAttributes(New With .style = "text-align:left")
                  c.Bound(Function(x) x.Line.LineItem).HtmlAttributes(New With .style = "text-align:left")
                  c.Bound(Function(x) x.Line.Months(0).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(1).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(2).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(3).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(4).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(5).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(6).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(7).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(8).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(9).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(10).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Months(11).Total).Format("0:#,##0")
                  c.Bound(Function(x) x.Line.Total).Format("0:#,##0").HtmlAttributes(New With .style = "text-align:right")
          End Sub) _
.Editable(Function(editable) editable.Mode(GridEditMode.InLine)) _
     .ToolBar(Sub(toolbar)
                      toolbar.Save()
              End Sub) _
                      .DataSource(Function(dataSource) dataSource _
                                      .Ajax() _
                                      .Batch(True) _
                                      .Model(Sub(m)
                                                     m.Id(Function(p) p.Line.LineItem)
                                                     m.Field(Function(p) p.Line.LineItem).Editable(False)
                                             End Sub) _
                                      .Read(Function(read) read.Action("BUReportRead", "RTF").Data("GetDDLYear()")) _
                                      .Update(Function(update) update.Action("Update", "RTF"))) _
                      .Editable(Function(editable) editable.Mode(GridEditMode.InCell)))

我也有其目的是要刷新在一个变化网格一个DropDownList:

@(Html.Kendo().DropDownList().Name("YearDropDownList") _
.DataTextField("YearText") _
.DataValueField("Year") _
.Events(function(x) x.Change("UpdateGrid()")) _
.DataSource(Function(source) source.Read(Function(read) read.Action("GetYears", "RTF"))) _
.SelectedIndex(0)
)

和一个位的javascript来处理.change事件:

 function UpdateGrid()
        
            $(document).ready(function() 
            
            var grid= $("#RealTimeFinancials").data("kendoGrid");
            grid.datasource.read();
            )
    

这个问题是调试,JavaScript变量“网格”时发生的类型:“i.ui.DataBoundWidget.extend.init” - 在下面一行我得到的错误:“不能读取属性‘读’的未定义”。

我敢肯定,这是显而易见的事......我只是希望VAR电网与read方法的kendoGrid(它似乎没有)。 P>

【问题讨论】:

【参考方案1】:

更正区分大小写的对象属性键dataSource,“S”应为大写

变更声明 来自grid.datasource.read();

到...grid.dataSource.read();

【讨论】:

谢谢你 - 现在更正了 - 是的,它做到了......需要注意我的区分大小写!

以上是关于jquery在DOM中为剑道网格返回意外类型的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 jquery 函数编辑剑道网格中的特定绑定列

有没有办法在 javaScript 或 jQuery 或剑道网格中将“nb-NO”小数转换为“en-US”

如何在剑道模板中动态设置列

剑道网格:性能缓慢问题

隐藏和显示列 - 剑道网格

剑道网格单元模板中的引导下拉菜单