如何获取剑道列表视图数据项计数

Posted

技术标签:

【中文标题】如何获取剑道列表视图数据项计数【英文标题】:How to get kendo listview data item count 【发布时间】:2013-08-19 08:20:25 【问题描述】:

我有一个绑定到数据源的剑道列表视图。当用户单击添加按钮时,我调用$("#arealistview").data("kendoMobileListView").prepend([newItem]),它将一个新项目添加到列表的开头。

如何获取列表视图中项目的计数?

【问题讨论】:

【参考方案1】:

数据源的total 方法应该返回:

var total = $("#arealistview").data("kendoMobileListView").dataSource.total();

也可以获取data方法返回的数组长度:

var data = $("#arealistview").data("kendoMobileListView").dataSource.data();
var total = data.length;

【讨论】:

如果我使用您的建议,那么我可以获得数据源中项目的数量,但这不包括我使用 .prepend() 在本地添加的任何新项目。【参考方案2】:

我相信你应该可以做到

var numItems=$("#arealistview").data("kendoMobileListView").length;

您可以随时参考这里http://docs.kendoui.com/api/web/listview,如果仍然没有结果,我建议您与剑道代表联系,他们是非常乐于助人的人。

【讨论】:

我已经尝试过了,我得到“未定义”。我找到了像 $("#arealistview").children("li").length 这样的“非剑道方式”,但我更喜欢剑道方式。感谢您的快速回复。 我想我明白了:var numItems=$("#arealistview").data("kendoMobileListView").element.children().length; 哦,好的。基于 API,我假设数据字段是一个数组,因此可以轻松引用 .length。我猜不会。搞清楚它的好工作!【参考方案3】:

<!DOCTYPE html>
<html>
<head>
    <base href="https://demos.telerik.com/kendo-ui/treeview/dragdrop">
    <style>html  font-size: 14px; font-family: Arial, Helvetica, sans-serif; </style>
    <title></title>
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.1.115/styles/kendo.common-material.min.css" />
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.1.115/styles/kendo.material.min.css" />
    <link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.1.115/styles/kendo.material.mobile.min.css" />

    <script src="https://kendo.cdn.telerik.com/2019.1.115/js/jquery.min.js"></script>
    <script src="https://kendo.cdn.telerik.com/2019.1.115/js/kendo.all.min.js"></script>
    

</head>
<body>
        <div id="example">
            <div class="demo-section k-content">
                <h4>Treeview One</h4>
                <div id="treeview-left"></div>
            </div>
          
      <script id="treeview-template" type="text/kendo-ui-template">
            #= item.text # <span class='item-count'></span>
        </script>
  
            <script>
                $("#treeview-left").kendoTreeView(
                   template: kendo.template($("#treeview-template").html()),
                  
                    dataSource: [
                         text: "Furniture", expanded: true, items: [
                             text: "Tables & Chairs" ,
                             text: "Sofas" ,
                             text: "Occasional Furniture" 
                        ] ,
                         text: "Decor", items: [
                             text: "Bed Linen" ,
                             text: "Curtains & Blinds" ,
                             text: "Carpets" 
                        ] 
                    ],
                   dataBound: function(e) 
                     
                var item = this.dataItem(e.node);
                var children = item && item.children ? item.children.data().length : undefined; 
                var text = children ? ("(" + children + ")") : "";
                $(e.node).find(">div .item-count").text(text);
              
                );

                $("#treeview-right").kendoTreeView(
                    dragAndDrop: true,
                    dataSource: [
                         text: "Storage", expanded: true, items: [
                             text: "Wall Shelving" ,
                             text: "Floor Shelving" ,
                             text: "Kids Storage" 
                        ]
                        ,
                         text: "Lights", items: [
                             text: "Ceiling" ,
                             text: "Table" ,
                             text: "Floor" 
                        ]
                        
                    ]
                );
            </script>

            <style>
                #treeview-left,
                #treeview-right
                
                    overflow: visible;
                
            </style>
        </div>


</body>
</html>

这是树视图

【讨论】:

以上是关于如何获取剑道列表视图数据项计数的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Xamarin UITests 获取列表视图项的计数

如何在可扩展列表视图 Kotlin 中获取标题中的子项计数

如何在 Kendo 多选变量中获取选定的文本?

可扩展的列表视图子项动态计数

获取剑道下拉值的选定ID

如何获取 UIView 中特定子视图的计数?