私は編集可能な「ポップアップ」を持つ基本的なグリッドを持っています
「編集」を含むコマンド列があります。読み取り、更新、作成、および破棄が定義されたリモート データ ソースを使用しています。グリッドが機能し、[編集] をクリックすると、すべてのフィールドが含まれたポップアップ ウィンドウが表示されます。フィールドにいくつかの変更を入力してUpdateをクリックすると、データが送信されます (ajax の投稿が表示されます) が、ポップアップ ウィンドウは閉じません。
私の更新ボタンには、これらのクラス「k-button k-button-icontext k-grid-update」があります。私のポップアップウィンドウには、これらのクラス「k-widget k-window」があります。
キャンセルボタンはウィンドウを閉じ、右上の X もウィンドウを閉じます。
何か案は?
私のデータソースコード:
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: "myReadURL",
dataType: "json"
},
update: {
url: "myUpdateURL",
dataType: "json"
},
create: {
url: "myCreateURL",
dataType: "json"
},
destroy: {
url: "myDestroyURL",
dataType: "json"
}
},
schema: {
data: "data",
total: function(response){return $(response.data).length;},
model: {
id: "id",
fields: {
id: { type: "number", editable: false },
location: { type: "string" },
username: { type: "string" },
host: { type: "string" },
model: { type: "string" },
newhost: { type: "string" },
newserial: { type: "string" },
newassettag: { type: "string" },
complete: { type: "boolean" }
}
}
},
pageSize: 10
});
私のグリッド初期化コード:
$("#grid").kendoGrid({
dataSource: dataSource,
height: 430,
filterable: true,
sortable: true,
resizable: true,
scrollable: true,
pageable: {
refresh: true,
pageSizes: [10,20,100]
},
columns: [{
hidden: true,
field:"id"
},{
command: "edit",
title: " ",
width: 90
},{
field: "location",
title: "Location",
width: 120,
filterable: {ui: cityFilter}
},{
field: "username",
title: "Username",
width: 120
},{
field: "host",
title: "Host",
width: 180
},{
field: "model",
title: "Model",
width: 180
},{
field: "newhost",
title: "New Host",
width: 180
},{
field: "newserial",
title: "New Serial",
width: 180
},{
field: "newassettag",
title: "New Asset",
width: 180
},{
field: "complete",
title: "Complete",
template: "<input type='checkbox' # if(complete){ # checked #} #/>",
width: 70
}
],
editable: "popup"
});
私のHTML:
<div id="example" class="k-content">
<div id="grid" style="height: 380px"></div>
</div>