2013-06-26 94 views
2

我的數據listview網格結構是這樣的。如何在數據源中爲listview設置數據項kendo ui

<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。

ex。像

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

我想更改古吉拉特邦的其他名稱。

我在下面的代碼中使用,但這隻設置第一個元素,而不是檢查特定的類。

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

如果您知道,那麼請回復解決方案。

+0

如何初始化樹視圖? – OnaBai

回答

6

您可以試試:

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

我要做的就是:

  • 得到一個關於你的劍道UI的ListView
  • 提取uid的列表元素。
  • DataSource使用getByUid找到具有uid的元素。
  • 更新name

第二種方法可能不太有效:

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"); 
  • 獲取到你的列表視圖的參考。
  • 然後通過檢索列表中的所有div(列表中的每個項目)找到索引,然後找到類別爲product1的索引。
  • 從ListView數據源獲取項目。最後更新name
0

你能用這樣的東西嗎?

var firstItem = $('#listView.product1 h3').data().kendoListView.dataSource.data()[0]; 

或者使用jQuery,您只需要使用

$('#listView.product1 h3').text("Some updated text"); 

$('#listView div.product1 h3').text("Some updated text"); 
如果你想讓它僅僅div的搜索

+0

它不工作。我想使用.set方法在數據源中設置數據。如果我們使用.text,那麼它在dom中設置,但不在數據源中,所以當我們改變kendo網格中的頁面時,然後改變文本而不顯示。 –