1

私は作業グリッドを持っています (フィールドは name と id です):

<grid stuff>
    <kendo:grid-column width="80px">
        <kendo:grid-column-command>
            <kendo:grid-column-commandItem name="delete" text="Delete">
                <kendo:grid-column-commandItem-click>
                //Here I want to grab this worker id and redirect the user to the url workerDelete.html?Id
                </kendo:grid-column-commandItem-click>
            </kendo:grid-column-commandItem>
        </kendo:grid-column-command>
    </kendo:grid-column>
    <kendo:grid-column width="80px">
        <kendo:grid-column-command>
            <kendo:grid-column-commandItem name="update" text="Update">
                <kendo:grid-column-commandItem-click>
                    // here I want to grab this worker id and redirect the user to the url workerUpdate.html?Id
                </kendo:grid-column-commandItem-click>
            </kendo:grid-column-commandItem>
        </kendo:grid-column-command>
    </kendo:grid-column>
</grid stuff>  

ユーザーがカスタム ボタンを押してビューを変更し、データをクエリ文字列に渡すときに、行からデータをキャプチャする方法を知る必要があります。私はjspと春を使用しています。

次のコードを使用しようとしましたが、うまくいきませんでした。

<script>
    function deleteWorker() {
        var grid = $('#grid').data('kendoGrid');
        var row = grid.dataItem(grid.select());
        var id = row.id;
        window.location.href = "/workerDelete.html?"+cpf; 
    }
</script>
4

2 に答える 2

2

次のように定義する必要がありgrid-column-commandます。

<kendo:grid-column-command>
    <kendo:grid-column-commandItem name="update" text="Update" click="deleteWorker"/>
</kendo:grid-column-command>

および次のdeleteWorkerような機能:

    function deleteWorker(e) {
        var tr = $(e.currentTarget).closest("tr");
        var item = $("#grid").data("kendoGrid").dataItem(tr);
        // Do whatever else you need
    }

この機能itemには剣道グリッドがありdataItemます。

于 2013-01-24T18:36:16.997 に答える
0

テンプレート列を使用します。テンプレートは、 k-button クラス (剣道ボタンのように見える) で装飾されたボタンや、 deleteWorkerクラスなどのカスタム クラスにすることができます。

次に、次のようにグリッドが初期化されるときにデリゲート イベント ハンドラーを追加できます。

$('#gridName').on('click','.deleteWorker',function(){
    var tr = $(this).closest('tr');
    var rowItem = grid.dataItem(tr);
    var id = rowItem.id;
    window.location.href = "/workerDelete.html?"+id;
})
于 2013-01-24T17:25:45.707 に答える