2013-09-27 71 views
2

劍道UI專家請幫幫我..獲取劍道選定節點的ID樹狀視圖

我是新來的劍道UI。我想在我的代碼中返回kendo treeview中Selected節點的id。 但它只返回相同的節點。

關於選擇節點,我想將選定節點的ID返回給我的代碼,並且在代碼中,我返回該節點的子元素 。

有沒有簡單的方法呢?

在此先感謝..

我的代碼

<script src="~/Scripts/kendo.treeview.min.js"></script> 
<script> 
    homogeneous = new kendo.data.HierarchicalDataSource({ 
     transport: { 
      read: { 
      url: "@Url.Action("datasourcefortree", "Home")", 
      type: "POST", 
      dataType: "json" 
      } 
     }, 
     schema: { 
      model: { 
      id: "ResourceID", 
      hasChildren: true 
      } 
     } 
    }); 

    $("#treeview").kendoTreeView({ 
     dataSource: homogeneous, 
     dataTextField: "Resource" 
    }); 

</script> 

和代碼的HomeController的datasourcefortree方法

[HttpPost] 
public JsonResult datasourcefortree(int? NodeID) 
{ 

    FNHSessionManager sessionManager = new FNHSessionManager(_connString, FNHSessionManager.DatabaseType.MsSql); 
    FNHRepository repository = new FNHRepository(sessionManager); 
    int nodevalue = 1; 

    if (NodeID == null) 
    { 
     ResourceMaster tree = repository.RetrieveById(nodevalue); 
     List node = new List{ 
      new ResourceMaster 
      { 
       ResourceID = tree.ResourceID, 
       Resource=tree.Resource 
      } 
     }; 
     return Json(node, JsonRequestBehavior.AllowGet); 
    } 
    else 
    { 
     if (NodeID.HasValue) 
     { 
      nodevalue = NodeID.Value; 
      IList childtreenode = repository.GetAllRecord(nodevalue); 
      return Json(childtreenode, JsonRequestBehavior.AllowGet); 
     } 
     return (null); 
    } 
} 

回答

2

試試這個:

$("#treeview").kendoTreeView({ 
     select: function(e) {  
      alert($("#treeview").getKendoTreeView().dataItem(e.node).ResourceID); 
     }, 
//... other code       
}); 
11

語法修復

$("#treeview").getKendoTreeView().dataItem(e.node).id 
+0

終於找到了一個實際工作的例子!謝謝!! – PAULDAWG

+0

如果這個答案是真的(確實如此),請將其標記爲答案。謝謝。 – Tavousi