如何在jqgrid中显示水平滚动条

时间:2013-06-01 18:58:33

标签: jquery jqgrid

我有一个宽的jqgrid,我已经通过width属性缩小了。当我使用它时,不会出现水平滚动条。我该如何展示呢?

非常感谢任何帮助,

由于

的Jaime

编辑:

这是我现有的JS代码。滚动条仍未显示:

<script type="text/javascript">
$(function () {
    $("#personal").jqGrid({
        url: "@Url.Action("List")",
        datatype: "json",
        mtype: "GET",
        colNames: ["Departamento",
                   "Nombres",
                   "Apellido Paterno",
                   "Apellido Materno",
                   "RUT",
                   "Contraseña",
                   "Fecha Nacimiento",
                   "Fotografía",
                   "Estado Civil",
                   "Género",
                   "Dirección",
                   "Cargo",
                   "E-mail",
                   "Fecha Ingreso",
                   "Creación",
                   "Modificación",
                   " "],
        colModel: [
            { name: "departamento", index: "dep_nombre", editable: true, edittype: "select", editoptions: { width: 100, dataUrl: "@Url.Action("GetDepartments","Departamento")" }, width: 250, editrules: { required: true } },
            { name: "per_nombres", index: "per_nombres", editable: true, width: 250, editoptions: { maxlength: 80, size: 32 }, editrules:{ required:true } },
            { name: "per_apellido_paterno", index: "per_apellido_paterno", editable: true, width: 250, editoptions: { maxlength: 80, size: 32 }, editrules: { required: true } },
            { name: "per_apellido_materno", index: "per_apellido_materno", editable: true, width: 250, editoptions: { maxlength: 80, size: 32 } },
            { name: "per_dni", index: "per_dni", editable: true, width: 100, editoptions: { maxlength: 20, size: 17 }, editrules: { required: true } },
            { name: "per_contrasena", editable: true, width: 100, editoptions: { maxlength: 50, size: 17 }, editrules: { required: false } },
            { name: "per_fecha_nacimiento", index: "per_fecha_nacimiento", editable: true, width: 100, editrules: { date: true }, formatter: 'date', formatoptions: {srcformat: 'SortableDateTime', newformat: 'd-m-Y'}, editoptions: { size: 17, dataInit: function (el) { $(el).datepicker({ dateFormat: 'dd-mm-yy' }); } }, },
            { name: "per_fotografia", index: "per_fotografia", editable: true, width: 250, edittype: "file", editoptions: { maxlength: 255, size: 32 } },
            { name: "per_estado_civil", index: "per_estado_civil", editable: true, edittype: "select", editoptions: { value: "S:Soltero; C:Casado; V:Viudo; D:Divorciado" }, width: 100 },
            { name: "per_sexo", index: "per_sexo", editable: true, edittype: "select", editoptions: { value: "M:Masculino; F:Femenino" }, width: 100 },
            { name: "per_direccion", index: "per_direccion", editable: true, width: 250, editoptions: { maxlength: 512, size: 32 } },
            { name: "per_cargo", index: "per_cargo", editable: true, width: 100, editoptions: { maxlength: 50, size: 32 } },
            { name: "per_email", index: "per_email", editable: true, width: 100, editoptions: { maxlength: 80, size: 32 }, editrules: { email: true } },
            { name: "per_fecha_ingreso", index: "per_fecha_ingreso", editable: true, width: 100, editrules: { date: true }, formatter: 'date', formatoptions: {srcformat: 'SortableDateTime', newformat: 'd-m-Y'}, editoptions: { size: 17, dataInit: function (el) { $(el).datepicker({ dateFormat: 'dd-mm-yy' }); } }, },
            { name: "per_creado_el", index: "per_creado_el", editable:false, search:false, width: 100, align: "center", formatter: "date" },
            { name: "per_modificado_el", index: "per_modificado_el", editable:false, search:false, width: 100, align: "center", formatter: "date" },
            { name: 'acciones', width: 58, fixed: true, sortable: false, resize: false, search:false, formatter: 'actions', formatoptions: { keys: true } }
        ],
        jsonReader: {
            repeatitems: false,
            id: "per_id"
        },
        pager: "#pager",
        rowNum: 10,
        rowList: [10, 20, 30],
        sortname: "per_apellido_paterno",
        sortorder: "asc",
        viewrecords: true,
        gridview: true,
        autoencode: true,
        multiselect: true,
        shrinkToFit: false,
        caption: "Funcionarios",
        editurl: "@Url.Action("AjaxEdit")",
        height: '100%',
        width: 935,
        rownumbers: true,
        rownumWidth: 40            
    });

    $("#personal").jqGrid('hideCol', ["per_contrasena", "per_fotografia", "per_direccion"]);
    $("#personal").jqGrid('navGrid', '#pager', { edit: false, add: true, del: true, search: false }, { width: 500 }, { width: 500 }, {}, { multipleSearch: false, multipleGroup: false });
    $("#personal").jqGrid('filterToolbar', { searchOperators: false });

    $.jgrid.edit.addCaption = "Agregar Funcionario o Visita";
    $.jgrid.edit.editCaption = "Modificar Funcionario o Visita";
    $.jgrid.edit.saveData = "¡El funcionario fue modificado! ¿Almacena los cambios?";

    $.jgrid.formatter.date.newformat = 'd-m-Y H:i';
}); 
</script>

7 个答案:

答案 0 :(得分:8)

没有任何代码,您需要查看一些内容......

请勿使用autowidth并确保您未使用shrinkToFit(需要将其设置为false)。除此之外,水平滚动条应该只显示这两个更改。除此之外,还应确保为列模型中的每个列显式设置宽度。

答案 1 :(得分:4)

只需添加

 shrinkToFit : false,

它使表格布局固定增长,因为单元格大小不会按照表格的父宽度缩小/

答案 2 :(得分:3)

添加一个宽度和溢出的div:在表格周围自动应该可以解决问题。

<div style="width:100px;overflow:auto;"><table id="personal"></table><div>

答案 3 :(得分:2)

在下列条件下,水平滚动条对我很有用:

  1. 设置参数shrinkToFitforceFit。例如:

    $('#gridObtenerRegistros').jqGrid({ shrinkToFit:false, forceFit:true,

    并且不使用width参数。

  2. colmodel内设置width属性。例如:

    colModel:[ {name:'numEmpleadoCliente',index:'numEmpleadoCliente', width:80, sortable: false, resizable: false}, {name:'nombre',index:'nombre', width:215, sortable: false, resizable: false}, {name:'estatus',index:'estatus', width:50, sortable: false, resizable: false}],

  3. 检查.ui-jqgrid .ui-jqgrid-bdiv类的样式有:`

    overflow: auto;

  4. 检查表格中的网格没有width属性。

    在我的例子中:  <table id="gridBusquedaRegistros"></table>

  5. 希望这有助于任何人。

答案 4 :(得分:1)

最后是因为网格中没有显示数据。当网格返回数据时,会出现水平滚动条。

此致 海梅

答案 5 :(得分:0)

可能您在页面上定义了一些其他CSS,这会产生问题。只使用您的代码的The demo会显示水平滚动条。

答案 6 :(得分:0)

您可以尝试如下:

$('#grid_table').jqGrid({
    .....
    colModel: [
            // you can also set width for individual columns
            { name: "user_name", align:"center", width: "200"},
    .....
    .....

    shrinkToFit: false,
    .....

    gridComplete: function()
    {
     $('#grid_table').jqGrid('setGridWidth', '1000'); // max width for grid
    },
    .....