¿Es posible establecer el ancho de un jQGrid en porcentaje? ¿Si es así, entonces cómo?¿Es posible establecer el ancho de un jQGrid en porcentaje?
Respuesta
No directamente, pero es posible ...
Si usted está deseando establecer el ancho de toda la red a un porcentaje que puede utilizar la propiedad ANCHO AUTO y va a establecer las rejillas de anchura a la anchura de su elemento padre (es decir, DIV) y ese elemento padre puede tener su porcentaje establecido.
autowidth: true
Si desea ajustar los anchos de columna por el porcentaje que puede utilizar Reducir hasta ajustar y luego sus valores de ancho de columna son básicamente un porcentaje.
shrinkToFit: true
Estas opciones y muchos otros se pueden encontrar en la jqGrid wiki
Es posible de manera muy sencilla:
$(document).ready(function(){
var pageWidth = $("#updatesList").parent().width() - 100;
$("#updatesList").jqGrid({
url:'quick_updates.php?action=loadUpdates'+"&request=ajax",
datatype: "json",
colNames:[table_heading_id, table_heading_products, table_heading_categories, table_heading_model, table_heading_availability, table_heading_weight, table_heading_quantity, table_heading_sortorder, table_heading_manufacturers, table_heading_price, table_heading_tax],
colModel:[
{name:'id',index:'id', width:(pageWidth*(5/100)), sortable:true, align:"center", search:true},
{name:'name',index:'name', width:(pageWidth*(20/100)), sortable:true, align:"left",true:false,resizable:true},
{name:'categories',index:'categories', width:(pageWidth*(10/100)), sortable:true, align:"left",resizable:true,search:true,stype:"select",searchoptions:{value:categories}},
{name:'model',index:'model', width:(pageWidth*(10/100)), sortable:false, align:"left",search:true,resizable:true,editable:true},
{name:'availability',index:'availability', width:(pageWidth*(10/100)), sortable:true, align:"left",resizable:true,search:true,stype:"select",searchoptions:{value:availability},editable:true,edittype:"select",editoptions:{value:availability}},
{name:'weight',index:'weight', width:(pageWidth*(5/100)), sortable:true, align:"center",search:false,editable:true},
{name:'quantity',index:'quantity', width:(pageWidth*(5/100)), sortable:true, align:"center",search:false,editable:true},
{name:'sortorder',index:'sortorder', width:(pageWidth*(5/100)), sortable:true, align:"center",search:false,editable:true},
{name:'manufacturers',index:'manufacturers', width:(pageWidth*(10/100)), sortable:true, align:"left",resizable:true,search:true,stype:"select",searchoptions:{value:manufacturers},editable:true,edittype:"select",editoptions:{value:manufacturers}},
{name:'price',index:'price', width:(pageWidth*(10/100)), sortable:false, align:"center",search:false},
{name:'tax',index:'tax', width:(pageWidth*(10/100)), sortable:true, align:"center",resizable:true,search:true,stype:"select",searchoptions:{value:taxes},editable:true,edittype:"select",editoptions:{value:taxes}}
],
rowNum:50,
rowList:[10,20,30,50,100],
vistazo a este código:
var pageWidth = $("#updatesList").parent().width() - 100;
y este código:
{name:'id',index:'id', width:(pageWidth*(5/100)), sortable:true, align:"center", search:true},
{name:'name',index:'name', width:(pageWidth*(20/100)),
En cuanto a mí, considero que este es el mejor deсision:
// add this after JqGrid creation
$("#YourTableGrid").setGridWidth(Math.round($(window).width(), true));
DataTables 3.5 + apoya esta vía
jQuery("#dt").jqGrid({
autowidth: true,
shrinkToFit: true
});
tamaño de la ventana de verificación en jQuery.
$(window).on("resize", function() {
var newWidth = $("#list").closest(".ui-jqgrid").parent().width();
$("#list").jqGrid("setGridWidth", newWidth, true);
});
asegúrese de establecer ANCHO AUTO: cierto en propiedades de cuadrícula
Si usted está tratando de establecer el ancho de la tabla jqGrid en su página HTML, prueba esto.
HTML
<table id="jqGrid" width="98%"></table>
JS
var outerwidth = $("#jqGrid").width();
$("#jqGrid").jqGrid({
width: outerwidth
});
var operationfieldwidth = 40
function getPercentage(ask)
{
return ((screen.width - operationfieldwidth) * ask)/100;
}
$(document).ready(function ($) {
GridBind();
});
function GridBind() {
$("#jqGrid").jqGrid({
url: '@(Url.Action("BindRole", "Role"))',
datatype: 'json',
mtype: 'Get',
colNames: ["Role Name", "Role Description", ""],
colModel: [{ name: 'ActRoleName', index: 'RoleName', width: getPercentage(20), align: 'left', power: 3, sortable: true },
{ name: 'ADRoleName', index: 'RoleDesc', width: getPercentage(80), align: 'left', power: 6, sortable: true },
{ name: 'add', sortable: false, width: operationfieldwidth, search: false, power: 0, formatter: addLink }
],
pager: jQuery('#jqControls'),
iconSet: "fontAwesome",
rowNum: 25,
rowList: [25, 50, 100, 500, 1000],
height: screen.height - 490,
viewrecords: true,
emptyrecords: 'No Records are Available to Display',
jsonReader: {
root: "rows",
page: "page",
total: "total",
records: "records",
repeatitems: false,
Id: "0"
},
autowidth: true,
multiselect: false,
}).navGrid('#jqControls', {
edit: false, add: false, del: false, search: true,
searchtext: "Search", refresh: true
}, {}, {}, {},
{
zIndex: 100,
caption: "Search Record",
sopt: ['cn'],
closeAfterSearch: true
});
}
function addLink(cellvalue, options, rowObject) {
var Str = "<a class='fa fa-pencil-square-o fa-2x' style='cursor:pointer;' href='../../Role/AddEditRole?id=" + rowObject.ID + "'></a>"
return Str;
}
¿Puedes dar una pequeña explicación de tu código? – Massimo
$(document).ready(function() { var yourPercentage = 50%; $("#jQGridDemo").setGridWidth($("#jQGridDemo").parent().width() * yourPercentage/100); });
Porcentaje calculado en la referencia de la envoltura de los padres de jqGrid.
- 1. ¿Es posible configurar el ancho del elemento Seleccionar en porcentaje?
- 2. Establecer el ancho máximo de ImageView como porcentaje del ancho de su matriz
- 3. ¿Es posible crear un área de mapa html en porcentaje?
- 4. JQGrid Columna Ancho automático
- 5. Establecer el peso (porcentaje) programáticamente
- 6. Establecer página en jqgrid
- 7. Ancho de píxel y porcentaje en Proporción
- 8. Ancho de configuración como un porcentaje usando jQuery
- 9. DataGridView: cómo establecer el ancho de columna?
- 10. Ancho basado en porcentaje dinámico en WPF
- 11. CSS: ¿Cómo funciona el ancho como un porcentaje?
- 12. CSS: Ancho en porcentaje y Bordes
- 13. Restablecer un ancho de etiqueta flexible a "auto" después de establecer un ancho explícito?
- 14. ¿Es posible personalizar el aspecto y la sensación de jqgrid?
- 15. centrando un div sin establecer el ancho
- 16. Ancho de porcentaje para elementos fijos?
- 17. ¿Es posible eliminar el botón expand/collapse del encabezado jqGrid?
- 18. Se necesita aclaración de Flex: ancho, mínimo (máximo) Ancho, explícito Ancho, explícitoMin (máximo) Ancho, medido Ancho, medidoMin Ancho, porcentaje Anchura
- 19. Establecer el ancho porcentual para el elemento span
- 20. JQgrid establecer altura de fila
- 21. ¿Es posible establecer un objeto como nulo?
- 22. ¿Cómo agrego un borde de 1px a un div cuyo ancho es un porcentaje?
- 23. ¿Cómo establecer el ancho de un elemento en línea?
- 24. Java JTable establecer el ancho de columna
- 25. ancho/alto de CSS pixel y porcentaje de cálculo combintaion?
- 26. ¿Es posible establecer un bloque como destino en un UIButton?
- 27. ¿Es posible establecer un punto de interrupción en funciones anónimas?
- 28. ¿Es posible establecer MasterType programáticamente?
- 29. ¿Cómo establecer el ancho de Table/TableRow/TabelCell por ciento en el código en asp.net?
- 30. JqGrid ¿Cómo cambiar el ancho del formulario de edición?
Perdón por la respuesta tardía. Como el truco ¿Pero funcionará cuando el usuario cambie la resolución o cambie el tamaño del navegador sin cargar la página? ¿Puede enviarme un sitio de demostración donde pueda verlo? – Amit
Lo logré usando el evento de cambio de tamaño de la ventana. –