Asp.net mvc 4 如何将函数的MVC4数据结果绑定到KendoUIListView?

Asp.net mvc 4 如何将函数的MVC4数据结果绑定到KendoUIListView?,asp.net-mvc-4,kendo-ui,kendo-listview,Asp.net Mvc 4,Kendo Ui,Kendo Listview,我有一个jsonresult方法的结果,该方法返回一组数据,包括一个图像列表。我想使用部分结果(图像列表)作为ListView的数据源。数据从jsonresult方法返回。如果我在JS中使用alert(data.TravelerImages[x]),我会得到我期望的结果;然而,当我尝试使用data.TravelerImages作为数据源时,我似乎一无所获 操作顺序如下: 索引页加载带有jasonresult数据填充的视图 字段-这很有效 我检查图像列表是否填充了正确的数据- 这很有效 我使用图像

我有一个jsonresult方法的结果,该方法返回一组数据,包括一个图像列表。我想使用部分结果(图像列表)作为ListView的数据源。数据从jsonresult方法返回。如果我在JS中使用alert(data.TravelerImages[x]),我会得到我期望的结果;然而,当我尝试使用data.TravelerImages作为数据源时,我似乎一无所获

操作顺序如下:

  • 索引页加载带有jasonresult数据填充的视图 字段-这很有效
  • 我检查图像列表是否填充了正确的数据- 这很有效
  • 我使用图像列表作为ListView的数据源-这是 不起作用
  • 这是我的ListView,请注意,我最初没有设置数据源,因为在图像列表从jsonresult方法返回之前,我无法设置:

            <div class="divTraveler_Image">
            @*<img id="TravelerImage" class="Traveler_Image" />*@
            @(Html.Kendo().ListView<DataSourceResult>()
                    .Name("lvTravelerImages")
                    .TagName("divImageListView")
                    .ClientTemplateId("template")
                    .Pageable()
                    .Selectable(selectable => selectable.Mode(ListViewSelectionMode.Multiple))
    
                )
            </div>
    

    这部分只显示空的ListView。感谢您的帮助。非常感谢。

    您正在第二次初始化ListView,而不是获取客户端对象。您应该获得如下所示的对象,并使用setDataSource方法

    e、 g


    谢谢,这是有道理的,但是我没有定义travImage(剑道模板的JS错误)。在这一点上,我应该在哪里定义它?或者我该如何设置模板来使用图像?没关系,我知道了。这么早就脑死亡了。我使用了#:数据。非常感谢您的帮助和指导!
     var lvTravelerImageData = new kendo.data.DataSource({ data: data.TravelerImages });
    
      //alert(data.TravelerImages[0]) // works great
    
      $('#lvTravelerImages').kendoListView({
           dataSource: lvTravelerImageData,
        });
      lvTravelerImageData.read();
    
    var lvTravelerImageData = new kendo.data.DataSource({ data: data.TravelerImages });
    
      //alert(data.TravelerImages[0]) // works great
    
      $('#lvTravelerImages').data("kendoListView").setDataSource(lvTravelerImageData);
    
      lvTravelerImageData.read();