カテゴリを宣言する剣道スケジューラがあります。イベント モデルにはcategories
、文字列配列を表すフィールドがあります。スケジューラ宣言には、次のようなリソースもあります。
resources: [{
field: "categories",
dataSource: [{
text: "",
value: "red",
color: "#FF0000"
}, {
text: "",
value: "green",
color: "#00FF00"
}, {
text: "blue",
value: "blue",
color: "#0000FF"
}],
multiple: true,
title: "Category"
}],
スケジューラ編集テンプレートには
<label for="categories">Categories</label>
<select data-bind="value:categories" name="categories" id="categories" multiple="multiple" data-placeholder="Select categories...">
</select>
およびスケジューラのedit(e)
コールバックで
var categ_editor = $("#categories").kendoMultiSelect({
dataTextField: "value",
dataValueField: "value",
itemTemplate: '<div class="k-state-default" style=\"width:100%; height:16px;\" ><div style=\"background-color:#:data.color#; width:14px; height:14px;display:inline-block;\" ></div> #: data.value #</div>',
tagTemplate: '<span class="k-state-default"><b style=\"background-color:#:data.color#;\" > </b> #: data.value #</span>',
dataSource: {
data: [{
text: "",
value: "red",
color: "#FF0000"
}, {
text: "",
value: "green",
color: "#00FF00"
}, {
text: "",
value: "blue",
color: "#0000FF"
}]
}
}).data("kendoMultiSelect");
したがって、スケジューラはすべて正常に表示され、複数の値を正しく処理します。しかし、カテゴリを編集しているとき、スケジューラはCategory
オブジェクト全体を ( とtext
でcolor
) このように送信します
"Categories": [{
"text": "",
"value": "red",
"color": "#FF0000"
}, {
"text": "",
"value": "green",
"color": "#00FF00"
}]
しかし、正しい JSON でなければなりません"Categories":["red","green"]"
この動作を修正するにはどうすればよいですか?