MultiSelect コントロールで機能するテンプレート (ItemTemplate など) を取得しようとしています。大まかに言うと、ページの読み込み時に MultiSelect を読み込み、更新できるようにしたいと考えています。
私はいくつかの非常に単純なhtmlを持っています:
<script type="text/x-kendo-template" id="members-template">
<select multiple="multiple">
# for (var j = 0; j < Members.length; j++) { #
<option selected value=' + Members.length + '>'HI'</option>
# } #
</select>
</script>
<div id="TeeOffTimes"></div>
そしてJavaScriptは次のとおりです。
var memberData =[
{
"Id": 1,
"FirstName": "Lorenzo",
"LastName": "Lamas",
"Gender": "M",
"Handicap": 72,
"Discount": 0,
"CartId": null,
"Email": null,
"Cart": null,
"Lockers": [],
"MemberAddresses": [],
"MemberCarts": [],
"MemberLockers": [],
"MemberTeeOffs": []
},
{
"Id": 2,
"FirstName": "Harry",
"LastName": "Burgess",
"Gender": "M",
"Handicap": 68,
"Discount": 0,
"CartId": null,
"Email": null,
"Cart": null,
"Lockers": [],
"MemberAddresses": [],
"MemberCarts": [],
"MemberLockers": [],
"MemberTeeOffs": []
},
{
"Id": 3,
"FirstName": "Paul",
"LastName": "Stevens",
"Gender": "M",
"Handicap": 78,
"Discount": 0,
"CartId": null,
"Email": null,
"Cart": null,
"Lockers": [],
"MemberAddresses": [],
"MemberCarts": [],
"MemberLockers": [],
"MemberTeeOffs": []
},
{
"Id": 4,
"FirstName": "Ben",
"LastName": "Crossen",
"Gender": "M",
"Handicap": 82,
"Discount": 0,
"CartId": null,
"Email": null,
"Cart": null,
"Lockers": [],
"MemberAddresses": [],
"MemberCarts": [],
"MemberLockers": [],
"MemberTeeOffs": []
}
];
$(function () {
$('#TeeOffTimes').kendoMultiSelect({
placeholder: "Select members...",
autoBind: false,
dataSource: {
type: "json",
serverFiltering: true,
transport: {
read: {
url: '/echo/json/',
type: 'GET'
}
},
schema: {
parse: function (response) {
var dataForTemplate = { Members: JSON.stringify(memberData) };
return { json: dataForTemplate };
}
}
},
itemTemplate: $("#members-template").html()
}).data("kendoMultiSelect");
});
これがそのコードの jsFiddleです。jsFiddleのエコー機能を使用して、関連データを返す Ajax 呼び出しをモックアップしたことがわかります。
挑戦したい剣道忍者はいますか?