La respuesta de Oleg funciona bien siempre que no tenga encabezados de Grupo.
Cuando agrego fila de encabezado de grupo con
los resultados de un 'GridUnload' seguido '' setGroupHeaders por un $ ('# mygrid'). JqGrid ({...}) no son consistentes
Funciona bien en Chrome, pero no en IE11.
En IE11, cada elemento 'jqg-third-row-header' termina representado en filas diferentes (en diagonal).
Estoy usando free-jqGrid: query.jqgrid.src.js versión 4.13.4 para la depuración. tracé el problema a código, en este archivo, que comienza con la línea 9936:
if (o.useColSpanStyle) {
// Increase the height of resizing span of visible headers
$htable.find("span.ui-jqgrid-resize").each(function() {
var $parent = $(this).parent();
if ($parent.is(":visible")) {
this.style.cssText = "height:" + $parent.height() + "px !important; cursor:col-resize;";
//this.style.cssText = "height:" + $parent.css('line-height'); + "px !important;cursor:col-resize;";
}
});
// Set position of the sortable div (the main lable)
// with the column header text to the middle of the cell.
// One should not do this for hidden headers.
$htable.find(".ui-th-column>div").each(function() {
var $ts = $(this), $parent = $ts.parent();
if ($parent.is(":visible") && $parent.is(":has(span.ui-jqgrid-resize)") && !($ts.hasClass("ui-jqgrid-rotate") || $ts.hasClass("ui-jqgrid-rotateOldIE"))) {
// !!! it seems be wrong now
$ts.css("top", ($parent.height() - $ts.outerHeight(true))/2 + "px");
// $ts.css("top", ($parent.css('line-height') - $ts.css('line-height'))/2 + "px");
}
});
}
$(ts).triggerHandler("jqGridAfterSetGroupHeaders");
});
Este código establece la altura y valores CSS superiores relacionados con cada tema 'JQG-tercera fila de cabecera'. Esto conduce a un diseño alto y diagonal del 'jqg-tercera-fila-encabezado'
Posible error:.
Los métodos $ parent.height() y $ ts.height(), arriba, devuelven la altura anterior de la tabla jqGrid en IE11. En Chrome devuelven la 'th' altura calculada (arriba = 0). He añadido y probado las 2 líneas comentadas que usan line-height. IE11 funciona bien cuando se usa la altura de línea. No entiendo completamente la lógica de cambio de tamaño de JqGrid, por lo que puede no ser una solución.
solución alternativa:
Si especifica.
colModel:
{
label: 'D',
name: 'W',
width: 6,
align: 'center',
resizable:false //required for IE11 multiple calls to this init()
},
Cuando tamaño variable es falso que el código anterior no se encuentra y la altura y la parte superior no están ajustadas.
Oleg's jqGrid es un control muy agradable. Tal vez pueda probar su grilla de demostración con un encabezado de grupo en IE11.
Una pregunta más: Hay un funktion de espera/pausa/tiempo de espera, hasta que un php-script haya hecho su trabajo (en mi script crear un pdf y hacer algunos mysql-querys). el .delay (de jquery) parece no funcionar. Cualquier idea y VIELEN VIELEN DANK (para la comunidad: Oleg habla alemán ;-) – Scharlotte
Gracias Oleg otra vez! Mi problema es que jqgrid es más rápido que php-Skript. Quiero retrasar la ejecución del funktion createmygrid() como en tu ejemplo. – Scharlotte
funcionó perfectamente gracias –