我将webgrid放在部分页面中,如下所示。在下一页中,我通过ajax调用在局部视图中更新我的网格。
@using (Html.BeginForm("Manage", "Book",FormMethod.Get, new { @id = "frmBGrid" }))
{
<fieldset id="form">
<div>
<select id="BookType" name="BookType">
@*<option value=""></option>*@
<option selected="selected" value="0">View All</option>
<option value="1">View New</option>
<option value="2">View Published</option>
</select>
</div>
<div id="BookGridid">
@{
@Html.Partial("_BookGridList", Model)
}
</div>
</fieldset>
}
我的下拉变换中的我的Ajax,我将选定的下拉值传递给控制器。并根据返回的模型更新网格。
var SelectedValue = $('#BookType').val();
$.ajax({
type: "POST",
url: href,
dataType: "html",
traditional: true,
contentType: 'application/json',
data: JSON.stringify({ bookType: SelectedValue }),
success: function (returndata) {
$('#BookGridid').html(returndata);
},
complete: function (xhr, status) {
},
error: function (arg, data, value) {
}
});
从我的控制器基于参数,我将发回模型列表以绑定到webgrid。
然而问题是分页或排序,我无法传递选定的下拉值。我怎样才能做到这一点?
答案 0 :(得分:1)
在会话中存储过滤值。因此,对于分页也使用了过滤值。