0
我有一个剃刀网页,其中包含一个表和局部视图源作为List //(Model.LeaveTypeList)剃刀(使用局部视图)特定刷新
@using (Html.BeginForm())
{
<table>
@*Grid Added as Partial View for leave Types*@
<tr>
<td colspan="2">
<div>
@Html.Partial("LeaveTypesPartial", Model.LeaveTypeList)
</div>
</td>
</tr>
</table>
}
这是局部视图(LeaveTypesPartial。 CSHTML)
@model List<AscoraWeb.Models.LeaveTypeModel>
@{
Layout = null;
}
@{
//canSort:false,
var grid = new WebGrid(source: Model,
defaultSort: "Name",
rowsPerPage: 7);
}
<table>
<tr>
<td colspan="2" style="text-align: left; font-family: Arial Baltic; font-style: italic;font-size: 15px">
These leaves can be assigned to Employees in the Service Calender for scheduling
</td>
<td colspan="2" style="text-align: left; font-family: Arial Baltic; font-style: italic;font-size: 15px">
</td>
</tr>
@*Row with buttons*@
<tr>
<td align="right" colspan="1">
<input type="button"/>
<input type="button"/>
</td>
</tr>
<tr>
<td>
<div id="grid">
@grid.GetHtml(
tableStyle: "grid",
headerStyle: "head",
alternatingRowStyle: "alt",
columns: grid.Columns(
grid.Column("name")
)
)
</div>
</td>
</tr>
</table>
在应用控制器我们正在分配一些值的局部视图
public ActionResult RatesAndCharges()
{
//Message that will appear before the content of the view is shown
ViewBag.Message = "This is the Rates and Charges section!";
//Adding content for the leave types grid
var ratesChargesModel = new RatesChargesModel { };
ratesChargesModel.LeaveTypeList = new List<LeaveTypeModel>();
var leaveTypeModel = new LeaveTypeModel { Name = "Paid Leave" };
ratesChargesModel.LeaveTypeList.Add(leaveTypeModel);
leaveTypeModel = new LeaveTypeModel { Name = "Unpaid Leave" };
ratesChargesModel.LeaveTypeList.Add(leaveTypeModel);
return View(ratesChargesModel);
}
钍是工作正常,我可以看到我的网格与元素
网格元素可以按名称排序(因为我们有默认排序:名称) 但是当我们点击名称整个页面得到刷新(正在打电话给public ActionResult RatesAndCharges()) 因此,我需要一种方法来排序网格中的元素,而不必刷新我的页面。