0

複数選択機能を使用して行を選択し、getRowData を使用してコントローラーにデータを渡し、個々のセル値を渡す代わりに行全体を渡します。ユーザーが単一行のチェックボックスを選択すると、onSelectRow イベントが発生します。getRowData を使用して行データを取得し、文字列を受け入れるコントローラーに渡すことができますが、データは null です。以下は私の onSelectRow イベントです。

onSelectRow: function (row_id) {

var rowData = $("#employee").getRowData(row_id);
$.ajax({
     type: 'POST',
     url: '/Home/Create/',
     data: { gridData: rowData },
     dataType: "json"
});

これは、文字列パラメーターを受け入れるコントローラー アクションです。

public ActionResult Create(string gridData) {}

他の投稿を読んで、コントローラーに送信する前に Json.stringify を使用しようとしましたが、必要な形式に変換するのが難しいため、行データを取得する方が柔軟に操作できます。

gridData を適切に取得するためにコントローラー アクションが受け入れる必要があるパラメーターは何ですか?

どんな提案でも大歓迎です!

4

1 に答える 1

0

さて、私はあなたの問題を抱えています、最初にrow_idを渡す代わりにこのようにします

var sel_id = jQuery("#grid").jqGrid('getGridParam', 'selrow');

これにより、選択した行のIDが得られ、次のようなデータを取得できます。

var val =  jQuery("#grid").jqGrid('getRowData', sel_id);

次に、データを送信するときに、データを文字列化する必要があります...すべての行を選択してデータをコントローラーに送信する1つの例を示します...ここで私の答えを見てください

MultiSelectjqgridMVC3のOnClickButton関数パラメーター

于 2012-07-27T05:26:26.023 に答える