Как изменить порядок строк таблицы в ASP.Net MVC3 с помощью jquery без использования какого-либо плагина? - PullRequest
0 голосов
/ 21 сентября 2018
I am using datatable plugin in my ASP.Net MVC3 project. Here I have to implement the row reordering. I used "jQuery.dataTables.rowReordering.js" plugin to implement it. For ui its working fine, but It failed to call server side function.

В моем проекте ASP.Net MVC3 я использую плагин с возможностью сбора данных.Здесь я должен осуществить переупорядочение строк.Я использовал плагин "jQuery.dataTables.rowReordering.js" для его реализации.Для пользовательского интерфейса он работает нормально, но ему не удалось вызвать функцию на стороне сервера.

Я использую подключаемый модуль для обработки данных в моем проекте ASP.Net MVC3.Здесь я должен осуществить переупорядочение строк.Я использовал плагин "jQuery.dataTables.rowReordering.js" для его реализации.Для пользовательского интерфейса он работает нормально, но ему не удалось вызвать функцию на стороне сервера.

<script type="text/javascript">
    $(document).ready(function () {
$('#myDataTable').dataTable().rowReordering({sURL: "/AdminArea/UpdateOrder" });
    });

</script>

my controller code is   


public void UpdateOrder( int id, int fromPosition, int toPosition, string direction )
    {

        if( direction == "back" )
        {
            var movedCompanies = objEpisodeDL.GetAllSegmentsByEpisodeId( 2 )
                        .Where( c => ( toPosition <= c.DisplayOrder && c.DisplayOrder <= fromPosition ) )
                        .ToList();

            foreach( var company in movedCompanies )
            {
                company.DisplayOrder++;
            }
        }
        else
        {
            var movedCompanies = objEpisodeDL.GetAllSegmentsByEpisodeId( 2 )
                        .Where( c => ( fromPosition <= c.DisplayOrder && c.DisplayOrder <= toPosition ) )
                        .ToList();
            foreach( var company in movedCompanies )
            {
                company.DisplayOrder--;
            }
        }

        objEpisodeDL.GetAllSegmentsByEpisodeId( 2 ).First( c => c.Id == id ).DisplayOrder = toPosition;

    }

view is-

<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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...