部分ビューにある webgrid があります。部分ビューには、webgrid にデータを渡す ajax フォームが含まれています。私のビューは次のようになります
using (Ajax.Begin("Gain", "Gaining", new AjaxOptions{UpdateTargetId="Res"}))
{
}
<div id="Res">
<div id="grid">
@{var grid = new WebGrid(source: Model.myList, canPage: true, rowsPerPage: 25, ajaxUpdateContainerId: "grid",
canSort: true);
grid.Pager(mode: WebGridPagerModes.All));
@grid.GetHtml(htmlAttributes: new { id = "grid" },
columns: grid.Columns(
grid.Column(columnName: "num", header: "Number"),
grid.Column(columnName: "name", header: "Full Name", canSort: true)
));
}
</div>
</div>
ページにはウェルが表示されますが、並べ替えや次のページへの移動が機能しません。試してみると、グリッドが消えます。列ヘッダーにカーソルを合わせると、ヘッダーの並べ替えリンクにカーソルを合わせると、URL がまだ localhost:XXXXX/# のままであることに気付きました。を削除するajaxUpdateContainerId="Res"
と、url は正しいように見えます: localhost:xxx?length=4?sort=name&sortdir=ASC。データがコントローラーから取得されていることを考えると、これは間違った URL です。ゲインとメソッド、ゲイン
これを機能させるにはどうすればよいですか。または、これをデバッグするにはどうすればよいですか? 並べ替えはどのように機能しますか?
編集
私は今、ajaxUpdateContainerId の使用について混乱しています。このリンクによると、これは彼/彼女のソートに役立ちませんでした. 私からそれを削除すると、ヘッダーリンクをクリックして並べ替えたり、ページングリンクをクリックしたりすると、部分ビュー全体が削除されます。では、ajaxUpdateContainerId の用途は何ですか?