jquery - 如何在listview kendo ui的数据源中设置数据项

标签 jquery kendo-ui kendo-grid

我的数据listview网格结构是这样的。

<div id="listView">
 <div class="product"><h3>India</h3></div>
 <div class="product1"><h3>Gujarat</h3></div>
 <div class="product"><h3>Surat</h3></div>
</div>

我想设置新数据,其中数据源具有类product1。

例如。就像

<div class="product1"><h3>Gujarat</h3></div>

我想将古吉拉特邦更改为其他名称。

我使用下面的代码,但这仅设置第一个元素,而不检查特定的类。

var firstItem = $('#listView').data().kendoListView.dataSource.data()[0];
firstItem.set('name','The updated Name');

如果您知道,请回复解决方案。

最佳答案

你可以尝试:

var list = $("#listView").data("kendoListView");
var uid = $(".product2", list.target).data("uid");
item = list.dataSource.getByUid(uid);
item.set("name", "The updated Name");

我所做的是:

  • 获取 Kendo UI ListView 的引用
  • 提取列表元素的uid
  • 使用 DataSource 中的 getByUid 查找具有该 uid 的元素。
  • 更新名称

第二种方法可能效率较低:

var list = $("#listView").data("kendoListView");
var idx = $("div", list.target).index($(".product1", list.target));
var item = list.dataSource.data()[idx];
item.set("name", "The updated Name");
  • 获取 ListView 的引用。
  • 然后通过检索列表中的所有 div(列表中的每个项目)来查找索引,然后查找具有类 product1 的索引。<
  • 从 ListView 数据源获取项目。
  • 最后,更新名称

关于jquery - 如何在listview kendo ui的数据源中设置数据项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17318803/

相关文章:

javascript - jQuery $.ajax 不将变量传递给 PHP

jquery - 当下拉菜单使用 jquery 更改时通知

javascript - Kendo UI 移动 ListView 示例不适用于我的代码

kendo-ui - 我可以在网格的数据绑定(bind)事件上传递参数吗?

javascript - jQuery 图片点击事件不起作用

jquery - 通过 id-selenium 网络驱动程序的一部分查找元素

javascript - 尝试添加到根父节点时出现 KendoUI 未定义节点问题

kendo-ui - Kendo UI : TreeView - How to tell if a given node has parents

kendo-ui - 带有自定义过滤器的 Kendo ui 网格

javascript - 如何在 jQuery 的部分 View 中将 Kendo Grid 行数据传递到 Kendo 弹出窗口?