0

列のヘッダーをクリックして他のパラメーターをコントローラーにポストして、WebGrid のデータを並べ替えたいのですが、WebGrid の自動並べ替えは列ヘッダーに 2 つのパラメーターしかない固定リンクを提供します。

WebGrid の列ヘッダーのリンク アドレスを変更する方法を見つけましたが、それは一般的なリンクでのみ機能し、 ajaxActionLinkでは機能しないため、部分ビューを使用して Web ページの一部のみを再フラッシュすることはできません。

誰でも質問を解決するのを手伝ってもらえますか?

var grid = new WebGrid(Model, canPage: true, rowsPerPage: 2);
@grid.GetHtml(tableStyle: "Contact``TB",headerStyle: "ContactHD",columns: grid.Columns( 
              grid.Column("ID", 
                          @Ajax.ActionLink("ID","Index","Home",new { pid = Model.PageIndex, sort=true},
                                           new AjaxOptions { UpdateTargetId = "grid", 
                                                             HttpMethod = "POST",
                                                             InsertionMode = InsertionMode.Replace 
                                                           }
                                           ),
                           model.id,
                           ))

             );

コードアップは私がしたい効果の例です、それは間違ったコードです。

4

1 に答える 1

0

ここから始められるのは、

共通のリンクを生成できるので、これらのリンクをアクションへの jquery ajax 呼び出しにバインドできます。

Jクエリコード

function MyMethod() {
var url = '@Url.Action("GetData")';
$.ajax({
url: url,
type: 'GET',
cache: false,
data: { value: strId},

success: function (result) {
$('#result).html(result);
}
});
}

アクション

public ActionResult GetData(string id)
{
return Json(new {foo="bar", ball="dragon"});
}

ここから取得したコード

于 2012-08-22T06:49:21.433 に答える