我有一個多選列表,充當標記列表的持有者。我似乎無法弄清楚如何正確獲取被更改的項目的值,並與更改的事件一起傳遞。這裏是我的劍道多選:如何使用KendoUI獲得multiselect中已更改的元素?
@(Html.Kendo().MultiSelect()
.Name("tags")
.Placeholder("No tags selected for this unit")
.BindTo(new SelectList(Model.TagsAvailable))
.Events(e => e
.Select("select")
.Change("change"))
.Value(Model.TagsSelected.ToArray())
)
這裏是我的JS-方法:
function select(e) {
var dataItem = this.dataSource.view()[e.item.index()];
var param = dataItem.Text;
var url = '/UnitDetails/TagUnit/@Model.UnitId';
$.ajax({
url: url,
data: { selectedItem: param },
type: 'GET',
dataType: 'json',
success: function (data) {
// ...
},
error: function() {
// ...
}
});
};
function change(e) {
var dataItem = this;
var param = dataItem.element.context.innerText;
var url = '/UnitDetails/UnTagUnit/@Model.UnitId';
$.ajax({
url: url,
data: { selectedItem: param },
type: 'GET',
dataType: 'json',
success: function (data) {
// ...
},
error: function() {
// ...
}
});
};
我的問題beeing,我覺得參數的時分配僅僅是快速和骯髒。當然,還有其他更正確的方法來解決這個問題嗎?