События jqGrid не запускаются - PullRequest
0 голосов
/ 23 ноября 2010

Я установил сетку jquery в проекте mvc и подключил ее к интерфейсу jquery. Начальная загрузка в порядке, и вы видите вызовы к действию в контроллере, и результаты отображаются в соответствии с ожиданиями. Если я нажимаю на любой из заголовков для сортировки - ничего не происходит, и действие не вызывается в контроллере. У меня нет ошибок в firebug - просто нет событий.

Я что-то упустил?

public ActionResult GetRateTypes(string sidx, string sord, int page, int rows)
        {
            int totalPages = 1; // we'll implement later
            int pageSize = rows;
            int totalRecords = 3; // implement later

            var jsonData = new
            {
                total = totalPages,
                page = page,
                records = totalRecords,
                rows = new[]{
                    new {id = 1, cell = new[] {"1", "-7", "Is this a good question?"}},
                    new {id = 2, cell = new[] {"2", "15", "Is this a blatant ripoff?"}},
                    new {id = 3, cell = new[] {"3", "23", "Why is the sky blue?"}}
                }
            };
            return Json(jsonData, JsonRequestBehavior.AllowGet);
        }


<script type="text/javascript">
        jQuery(document).ready(function() {
            jQuery("#list").jqGrid({
            url: '/Configuration/GetRateTypes',
                datatype: 'json',
                mtype: 'GET',
                colNames: ['Code', 'Name', 'Rate'],
                colModel: [
          { name: 'Code', index: 'Code', width: 40, align: 'left' },
          { name: 'Name', index: 'Name', width: 40, align: 'left' },
          { name: 'Rate', index: 'Rate', width: 400, align: 'left'}],
                pager: jQuery('#pager'),
                rowNum: 1,
                rowList: [5, 10, 20, 50],
                sortname: 'Code',
                sortorder: "desc",
                viewrecords: true,
                imgpath: '/css/blitzer/',
                caption: 'Interest Rate Types'
            });
        }); 
    </script>

Ответы [ 2 ]

0 голосов
/ 24 ноября 2010

Если вы используете datatype: 'json', то сервер отвечает за сортировку данных и подкачку страниц.Ваш текущий код сервера (GetRateTypes) не делает этого.Посмотрите этот старый ответ, например, который показывает, как можно реализовать сортировку и разбиение на страницы.

0 голосов
/ 23 ноября 2010

Возможно, он не сортируется, поскольку jqGrid не знает, как сортировать.Попробуйте применить свойство sorttype для каждого столбца в свойстве colModel.Прочитайте внимательно документацию

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...