2009-09-24 3 views
3

Я пытаюсь использовать плагин JQuery jqGrid с приложением asp .net mvc.jqGrid застрял на загрузке?

Я передаю сетке объект JSON в следующем format как в документации jqGrid:

{ 
    "total":1, 
    "page":1, 
    "records":10, 
    "rows": 
     [{ 
     "i":1,"cell":["foo","bar"]}, 
      {"i":2,"cell":["foo1","barr"]}, 
      {"i":3,"cell":["foo2","barrr"]}] 
} 

и jqGrid является установка:

jQuery("#searchResults").jqGrid({ 
        url: '/Customer/SearchResults/', 
        datatype: 'json', 
        mtype: 'GET', 
        colNames: ['Surname', 'Forename'], 
        colModel: [ 
         { name: 'Surname', index: 'Surname', width: 200, align: 'left' }, 
         { name: 'Forename', index: 'Forename', width: 200, align: 'left'}], 
        pager: jQuery('#pager'), 
        rowNum: 10, 
        rowList: [5, 10, 20, 50], 
        sortname: 'Id', 
        sortorder: "desc", 
        viewrecords: true, 
        imgpath: '/scripts/themes/coffee/images', 
        caption: 'My first grid' 
       }); 

Его удары мои действия, но сетка застрял на загрузке, какие-то идеи, что я делаю неправильно?

Благодаря

ответ

6

Если сетка «застряла на загрузку», что обычно означает, что сетка имеет либо не получили ответ или что ответ содержит данные, которые он не может использоваться для заполнения сетки. Первое, на что нужно обратить внимание - это сам ответ, либо на вкладке Net Firebug, либо на Fiddler. Убедитесь, что это на самом деле JSON, а не ошибка 500 или сообщение об ошибке HTML. Во-вторых, они очень внимательно обращают внимание на ошибки JavaScript. Вам нужно будет использовать Firebug или отладчик IE 8 (который вы должны вручную включить), чтобы поймать ошибки, потому что в противном случае они могут быть хорошо скрыты; Ошибки JavaScript, как правило, не очевидны для пользователя. Затем вы можете проследить через стек вызовов, чтобы выяснить, почему сетка не нравится ваши данные.

Тем не менее, это делается вручную, это немного боль, поэтому I wrote extension methods to create appropriately-formatted data for the grid from any IQueryable.

+1

спасибо, получил это работает, это было ошибка в моем html! я фактически наткнулся на ваш блог, пытаясь понять это, очень полезно! все еще возникла проблема с наложением загрузки, он не удалял бы себя после загрузки данных, я только что редактировал файл jqGrid. –

+0

Спасибо! случайная ошибка javascript для меня вызывала это. Исправлено это и poof! он работал. – dpb

+1

Обычно это связано с тем, когда вы FORGET добавили файл перевода в папку i8n. По крайней мере, один должен быть там. Люди склонны ставить js и css и попробовать. –

0

После того, как я посоветовал Крейгу Стенцу, я увидел с Firebug, что у меня была ошибка 500. Для меня это оказалось плохой строкой соединения с DB. Я использовал решение MVC 3, размещенное на Codeplex в качестве шаблона. Решение состояло из нескольких проектов, а два из проектов имели строки подключения. Я забыл одного из них. Я продолжал возиться с настройками пула приложений IIS и разрешениями БД, пока не нашел другую строку подключения.

Надеюсь, это кому-то поможет.

-1

иногда и заклинивание сложилось, петлевые в JS файл, я думаю, вы должны попробовать это

repeateditems: ложные
моя проблема решена ....

Смежные вопросы