ポップアップ ウィンドウでリストビュー アイテムを編集したいと思います。いくつかの異なる例をつなぎ合わせましたが、何かが欠けているに違いありません。これが私が持っているものですが、ポップアップウィンドウテンプレートをリストビューのデータソースにバインドする方法がわかりません。
これが私がこれにアプローチした方法です:
ウィンドウ テンプレート:
<div id="window"></div>
<script type="text/x-kendo-template" id="win-template">
<div>#:StuId#</div>
</script>
剣道/jQuery コード:
<script>
$(document).ready(function () {
var dataSource = new kendo.data.DataSource({
pageSize: 50,
transport: {
read: {
url: "GetData.asmx/GetStudentsByFeederId",
dataType: "xml",
data: { feederId: ("0123") }
}
},
schema: {
type: "xml",
data: "/ArrayOfStudentVO/StudentVO",
model: {
id: "student_id",
fields: {
StuId: { field: "student_id/text()", type: "string" },
StuName: { field: "stu_name/text()", type: "string"},
MathRec: { field: "math_rec/text()", type: "string" },
EnglishRec: { field: "english_rec/text()", type: "string" }
}
}
}
});
/* PAGER FUNCTION (Used in ListView) */
$("#pager").kendoPager({
dataSource: dataSource
});
/* LIST VIEW CREATION */
var listView = $("#listView").kendoListView({
editable: "true",
selectable: "true",
dataBound: onDataBound,
change: onChange,
dataSource: dataSource,
template: kendo.template($("#template").html())
}).data("kendoListView");
function onChange() {
var data = dataSource.view();
selected = $.map(this.select(), function(item) {
return data[$(item).index()].StuId;
});
kendoConsole.log("Selected: " + selected.length + " item(s), [" + selected.join(", ") + "]");
popUp(selected);
}
function popUp(d) {
var window = $("#window"),
undo = $("#undo")
.bind("click", function() {
window.data("d").open();
undo.hide();
});
if (!window.data("d")) {
window.kendoWindow({
width: "600px",
title: "Student Information",
close: onClose,
content: { template: kendo.template($("#win-template").html()) }
});
}
}
var onClose = function() {
undo.show();
}
</script>