2012-12-20 68 views
2

我有幾個自動完成所有設置和工作使用相同的數據源定義爲一個變量。但是我不確定如何讓我的組自動完成工作,因爲這有可能具有多個值。Kendo UI自動完成數據源問題

這裏是我的數據源:

UsersDataSource = new kendo.data.DataSource({ 
    transport: { 
     read: { 
      url: "/_layouts/handlers/Users.ashx", 
      dataType: "json", 
      type: "get", 
      cache: false 
     } 
    } 
}); 

此JSON如下所示的樣品(注意組):

[{"Id":"USERNAME","Type":"External","Name":"Jim Jones","Email":"[email protected]","Address":"1600 Penn Ave","Organization":"Company ABC","Notes":"User Notes","Groups":["Group A","Group B","Group C","Group D"]}] 

所有的我已經建立了做工精細與此有關的其他自動完成的代碼:

$("#SearchAddress").kendoAutoComplete({ 
    placeholder: "Address", 
    dataTextField: "Address", 
    dataValueField: "Address", 
    dataSource: UsersDataSource 
}); 

我真的不知道如何使這項工作的團體......任何意見將是應用程序reciated。

編輯:我創建了一個jsfiddle來說明這個問題

編輯:小提琴再次更新

回答

1

應指定第二自動完成綁定到peoples陣列的Groups領域:

$("#SearchGroup").kendoAutoComplete({ 
    placeholder: "Group", 
    dataSource: { 
     data: peoples[0].Groups, 
    } 
}); 

http://jsfiddle.net/pSMtt/4/

這裏是如何讓所有羣體:

var groups = []; 

for (var i = 0; i < peoples.length; i++) { 
    for (var j = 0; j < peoples[i].Groups.length; j++) { 
     groups.push(peoples[i].Groups[j]); 
    } 
} 

$("#SearchGroup").kendoAutoComplete({ 
    placeholder: "Group", 
    dataSource: { 
     data: groups, 
    } 
}); 
+0

我想我應該一直在撥弄更具體。這種情況只適用於第一組小組,而不是如果每個人[0],人羣[1]有不同的羣體...這裏是一個更新的小提琴... http://jsfiddle.net/nlarkin/mjD5H/ – BlueBird

+0

你真的想實現什麼?您可能需要更新第二個自動填充數據源。使用第一個自動完成的更改事件和第二個自動完成的數據源的數據方法。 –

+0

我想得到所有人的所有組的下拉列表,與任何其他字段沒有關聯。 – BlueBird