KendoUI ListView を動的に作成するにはどうすればよいですか。つまり、div、dataSource、templates を作成し、機能を動的に追加、編集、および削除したいということです。kendoui を使用してそれを行うにはどうすればよいですか。
次のようなテンプレートを定義しました
<script type="text/x-kendo-tmpl" id="template">
<div class="products">
<ul><li>
# for (var i = 0; i < data.length; i++) { #
#= data[i] #
# } #
</li></ul>
<div class="edit-buttons">
<a class="k-button k-button-icontext k-edit-button" href="\\#"><span class="k-icon k-edit"></span>Edit</a>
<a class="k-button k-button-icontext k-delete-button" href="\\#"><span class="k-icon k-delete"></span>Delete</a>
</div>
</div>
</script>
そして、動的テンプレートは
<script type="text/x-kendo-tmpl" id="edittemplate">
<div class="product-view">
<ul><li>
# for (var i = 0; i < data.length; i++) { #
<input type="text" data-bind="value:data[i]" name="ProductName" required="required" validationMessage="required" />
# } #
</li></ul>
<div class="edit-buttons">
<a class="k-button k-button-icontext k-update-button" href="\\#"><span class="k-icon k-edit"></span>Update</a>
<a class="k-button k-button-icontext k-cancel-button" href="\\#"><span class="k-icon k-delete"></span>Cancel</a>
</div>
</div>
</script>
そして、私は次のようなスクリプトを作成しました
var data = ["Todd", "Steve", "Burke"];
$("#dynamicdiv").kendoListView({
template: kendo.template($("#template").html()),
editable:true,
dataSource:data,
editTemplate:kendo.template($("#edittemplate").html()),
}).delegate(".k-edit-button", "click", function (e) {
alert("dtjherut");
listview.edit();
e.preventDefault();
}).delegate(".k-delete-button", "click", function (e) {
alert("clicking");
var model = dataSource.view()[$(this).closest(".tm").index()];
dataSource.remove(model);
e.preventDefault();
dataSource.sync();
}).data("kendoListView");
これで、リスト ビューがロードされ、3 つの名前と、編集および削除ボタンが表示されます。ただし、削除ボタンと編集ボタンは機能しません。ここでは、作成、削除、および更新のパスを指定していません。基本的に、すべてのテンプレートとデータソースを動的に作成する必要があります。間違いがありましたら申し訳ありません。どんな助けでも大歓迎です。