2011-02-05 2 views
0

У меня есть интересная проблема с созданием subgrid в отличном плагине jqGrid. Основная сетка работает отлично. Однако, когда я добавляю параметры для создания subgrid, я получаю новый первый столбец, но не получаю знак плюса. Когда я проверяю демонстрацию с помощью Firebug, я вижу, что в первый столбец добавлен href и несколько классов. Я не вижу эти классы в первом столбце моей сетки. Вот код:Плюс значок не появляется в первом столбце jqgrid с подсетой!

$("#quotelist").jqGrid({ 
    datatype:'xml', 
    url:'getQuotes', 
    mtype: 'GET', 
    postData:{"a":$("#AccountNumber").val(), 
     "op":"y", 
     "cl":"n", 
     "cd":"All", 
     "eq":"All", 
     "sess":$("#SessionID").val(), 
     "d":new Date().getTime() 
    }, 
    colNames:['Origin Zip', 'Destination Zip', 'Equipment', 'Commodity'], 
    colModel:[ 
     {name:'ozip', index:'ozip', title:false, width:140}, 
     {name:'dzip', index:'dzip', title:false, width:40}, 
     {name:'equipment', index:'equipment', title:false, width:40}, 
     {name:'commodity', index:'commodity', title:false, width:40} 
    ], 
    loadError:function(xhr, st, err) { 
     alert('loaderror on quote request grid - ' + st) 
    }, 
    pager:'#pager', 
    height: 550, 
    width: 425, 
    rowNum: -1, 
    hidegrid: false, 
    gridview: true, 
    gridstate:'hidden', 
    viewrecords: true, 
    altRows: true, 
    sortname: 'ozip', 
    sortorder: 'asc', 
    caption: 'Carriers', 
    subGrid:true, 
    subGridUrl:"getQuoteResponse&a="+$("#AccountNumber").val() + 
       "&sess=" + $("#SessionID").val(), 
    subGridModel: [ 
     {name:['Carrier Name','Status'], width:[200,100]} 
    ] 
}); 

Другая информация: Я включил «пейджера», чтобы убедиться, что значки отображаются на пейджере - они делают. Я пробовал это на jqGrid версии 3.8.2 и 3.6.5 с тем же результатом. Версия jQuery - 1.4.2, jQuery UI версии 1.8.2.

Я думаю, что плюс не появляется, потому что я не получаю новые классы в первом столбце, когда сетка загружается, но я понятия не имею, почему нет. Странно, что первый столбец появляется, когда subGrid установлен в true, но знак плюса не загружается.

Любая идея? Большое спасибо за любые предложения!

Редактировать: nevermind! Я редактировал этот пост, чтобы исправить форматирование и нашел проблему. Слишком много параметров о hidegrid, gridview и т. Д. Это были мои первые эксперименты с jqGrid.

ответ

1

Основная проблема заключается в том, что gridview:true не может быть использован в вашем случае. В описании gridview опции в the documentation вы найдете

Если установлено значение истинно, мы не можем использовать TreeGrid, Подсеточное или afterInsertRow событие.

0

Я столкнулся с той же проблемой, когда работал с сетью jQuery. В моем случае плюс значок не появляется, но когда я нажал на ячейку первого столбца, появится моя подзаголовок. После поиска часа я наконец получил решение. В файл ui.jqgrid.css входит этот код.

.ui-icon-plus { 
height: 10px; 
width: 10px; 
background-image: url('../../Images/plus.gif'); 

}

.ui-icon-minus { 
height: 10px; 
width: 10px; 
background-image: url('../../Images/minus.gif'); 

}

путь Изображение будет ваш путь изображения. Я не даю высоту и ширину изображения, поэтому я не вижу в пользовательском интерфейсе. Надеюсь, эта помощь.

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