7

ポップアップ編集で Kendo UI Grid を使用しています。デフォルトでは、ユーザーがポップアップ エディターでフィールドを編集しているときに Enter キーを押すと、データがグリッド (ポップアップ エディターの背後) にレンダリングされますが、ポップアップは表示されたままになり、[更新] ボタンをクリックするまで保存イベントは発生しません。 ' ボタン。

ユーザーがフィールドの編集中にEnterキーを押すと、「更新」ボタンのクリックがトリガーされるように、その機能を変更しようとしています。つまり、データをグリッドにレンダリングし、保存イベントを発生させ、ポップアップエディターを閉じます。

私の現在の試みは、ポップアップエディタを閉じるだけですが、保存イベントを発生させず、選択した行のフィールドに加えられた変更を元に戻します. 代わりにキャンセルボタンがトリガーされたようです。

options.edit = function (e) {
    $('.k-edit-field .k-input').on('keypress', function (e) {
        utils.onEnter(e, function () {
            $('.k-grid-update').trigger('click');
        });
    });
};

「更新」ボタンのクリックをトリガーするにはどうすればよいですか、または少なくともその動作をシミュレートするにはどうすればよいですか?

4

2 に答える 2

6

変更されたフィールドをダーティにしてから保存する剣道メソッドを見つけることができなかったので、少し jQuery を使用して、更新ボタンにフォーカスを移し、クリック イベントをトリガーしました。期待どおりに動作します...

options.edit = function (e) {
    $('.k-edit-field .k-input').on('keypress', function (e) {
        utils.onEnter(e, function () {
            $('.k-grid-update').focus().trigger('click');

        });
    });
};
于 2013-02-25T18:43:05.033 に答える
2

現在のデータを保存して PopUp エディターを閉じるsaveRow メソッドを使用することをお勧めします。

例えば:

$("#grid").data("kendoGrid").saveRow();
于 2013-02-22T22:27:51.563 に答える