ASP.NetMVC3プロジェクトでdatatableプラグインを使用しています。ここでは、行の並べ替えを実装する必要があります。「jQuery.dataTables.rowReordering.js」プラグインを使用して実装しました。UIの場合は正常に機能しますが、サーバー側の関数を呼び出すことができませんでした。
<script type="text/javascript">
$(document).ready(function () {
$('#myDataTable').dataTable().rowReordering({sURL: "/AdminArea/UpdateOrder" });
});
</script>
私のコントローラーコードは
public ActionResult Index()
{
return View(db.AdminAreas.ToList());
}
public void UpdateOrder(int id, int fromPosition, int toPosition, string direction)
{
}
意見
<table id="myDataTable">
<thead>
<tr>
<th>
OrderNo
</th>
<th>
SubArea
</th>
<th>
Description
</th>
</tr>
</thead>
<tbody>
@{
if (@ViewData["SubAreaForArea"] != null)
{
IEnumerable<GridDragAndDrop.Models.SubAreaForAdmin> subarea = ViewData["SubAreaForArea"] as IEnumerable<GridDragAndDrop.Models.SubAreaForAdmin>;
foreach (var item in subarea)
{
<tr class="order">
<td>
@Html.DisplayFor(modelItem =>item.OrderNo)
</td>
<td>
@Html.DisplayFor(modelItem => item.SubArea)
</td>
<td>
@Html.DisplayFor(modelItem => item.Description)
</td>
</tr>
}
}
}
</tbody>
</table>
問題は見つかりませんでした。したがって、jqueryを使用して行のドラッグアンドドロップを実装するのを手伝ってください。また、更新された注文はデータベースで更新されます。