jQuery grid plugin

Overview

jqGrid

jQuery grid plugin

jqGrid is an Ajax-enabled JavaScript control that provides solutions for representing and manipulating tabular data on the web. Since the grid is a client-side solution, loading data dynamically through Ajax callbacks, it can be integrated with any server-side technology, including PHP, ASP, Java Servlets, JSP, ColdFusion, and Perl.

Comments
  • 'NaturalSort' implementation

    'NaturalSort' implementation

    My purpose to do not log any issue here. It could be a new feature of jqGrid. I suggest jqGrid is maturing day-by-day so, there should be some facilities so, anyone can add customtype for example if I want to apply custom sort and that is not in-build then there should be some way to tell jqGrid that this is my new type and please sort my data according to this type.

    I raised an issue on jqGridForum and StackOverflow but till date there is nothing as a solution.

    So, I decided that this is good to take this all in your knowledge.

    Can you please see this for more details : http://stackoverflow.com/questions/14865567/how-to-implement-naturalsort-in-jqgrid ?

    opened by garora 27
  • Problem with the width of the grid

    Problem with the width of the grid

    Hello again :), It seems that there is another bug with the computed size of the grid. As you can see in the following screenshot of my jqgrid, the text and the searching box in the last column of the grid are going out of the border. 1

    This happens in any grid and at any time the grid is computed (e.g. resizing the window of the browser).

    I noticed that for some reason the grid is 2 pixels lesser than it should be. Inspecting the appropriate div of the grid and adding 2 pixels in the style fixes this problem as you can see in the next screenshot.

    2

    Thanks

    Bug 
    opened by yannniskargakis 19
  • Use `height:auto` with max-height to avoid infinite growth

    Use `height:auto` with max-height to avoid infinite growth

    Is there a way to achieve auto height but with a limit to prevent the grid from growing too large?

    I found maxHeight property of others forks, has this plugins a similar property for that? https://github.com/free-jqgrid/jqGrid/blob/c97869acd736030242469337343106f6cb56f731/js/grid.base.js#L6141-L6143

    if (p.maxHeight) {
        $(grid.bDiv).css("max-height", p.maxHeight + (isNaN(p.maxHeight) ? "" : "px"));
    }
    

    thanks in advance, this plugin is amazing

    opened by systemsolutionweb 16
  • Refreshing grid features after editing

    Refreshing grid features after editing

    Hello, I'm facing 2 related issues which are both happening after editing:

    1. If there's a "cellattr" defined for the edited cell (or for any other cell in the row, but based on the content of the edited cell), it is not refreshed following the editing.
    2. If there's any group summary which considered the edited cell value, it is not refreshed following the editing.

    I'm wondering if there is any service function which could be called for refreshing those. Updating jqGrid to do this automatically would also be very nice.

    Thanks, Udi

    Bug 
    opened by unle70 16
  • Incorrect handling of mouse clicks in jqModal.js

    Incorrect handling of mouse clicks in jqModal.js

    After many years of using jqGrid, I have stumbled upon a major flaw of jqModal.js. Apparently it captures and prevents mousedown events outside of a popup window; and it works fine until I attach jQuery Datepicker for single field search via searchoptions.dataInit(). In that case I observe interesting but obviously nasty effect: while selecting days in the calendar is still possible, selecting in Datepicker's month and year drop-downs becomes not possible as soon as the SELECT's OPTION clicked appears to be outside of search popup window.

    E.g. selecting January and February in this case is still possible, but March-December is not: options_outside_window

    The bug occurs in Firefox (all platforms) and in IE/Edge (all versions). It works well in Chrome, Safari and Opera on all platforms though.

    Bug 
    opened by snobo 15
  • Dynamic select dropdown from Array

    Dynamic select dropdown from Array

    Hii hi need to create dynamic select dropdown in my inline edit, I saw in documentation that jqGrid already mentioned about it through ajax request on documentation with dataUrl & buildSelect.

    But how if I need construct dropdown from my local array variable instead of ajax request??

    Thanks in advanced

    Question 
    opened by ghost 13
  • Horizontal scroll bar when height: 100%

    Horizontal scroll bar when height: 100%

    version:v5.3.2

    browser: Google Chrome

    browser version: 70.0.3538.67

    Horizontal scroll bar when set height: 100% ,I don't think y appear scroll bar, let all the content is visible,like demo

    $(document).ready(function () {
        $("#jqGrid").jqGrid({
            url: 'http://trirand.com/blog/phpjqgrid/examples/jsonp/getjsonp.php?callback=?&qwery=longorders',
            mtype: "GET",
            datatype: "jsonp",
            styleUI: "Bootstrap",
            colModel: [
                { label: 'OrderID', name: 'OrderID', key: true, width: 75 },
                { label: 'Customer ID', name: 'CustomerID', width: 150 },
                {
                    label: 'Order Date', name: 'OrderDate', width: 150,
                    formatter: 'date', formatoptions: { srcformat: 'Y-m-d H:i:s', newformat: 'ShortDate' }
                },
                { label: 'Freight', name: 'Freight', width: 150 },
                { label: 'Ship Name', name: 'ShipName', width: 150 }
            ],
                viewrecords: true,
                height: "100%",//just change here,I don't think y appear scroll bar, let all the content is visible
                rowNum: 20,
                pager: "#jqGridPager"
        });
    });
    

    image

    Why is that?Setup is not correct?

    Bug 
    opened by yedajiang44 12
  • Colum menu wrong position

    Colum menu wrong position

    Dislocated col menu when some elements are before table tag. It is related to bug fixed on April 11.

    Pic below is from official demo, just some h1 tags inserted to show the issue.

    capture

    Bug 
    opened by BogMil 12
  • filterToolbar - doesn't send

    filterToolbar - doesn't send "sopt" to server

    Hello, When we search in filterToolbar, it doesn't send the chosen operator to server when:

    • searchOperators = true
      
      
    
    - ```
    datatype <> local (in my case xml)
    

    Best Regards.

    opened by demonslord 12
  • Add Column (Show / Hide) Popup similar than jTable

    Add Column (Show / Hide) Popup similar than jTable

    In jTable if I do a mouse right click in the headers show a columns (show / hide) popup.

    columns

    jTable works of this way:

    fields: {
                    StudentId: {
                        list: false //Column never will be shown
                    },
                    Name: {
                        visibility: 'fixed' //Column will be shown in the filter popup
                    },
                    EmailAddress: {
                        title: 'Email address',
                        width: '20%',
                        list: true //Column always will be shown
                    },
                    Gender: {
                        title: 'Gender',
                        width: '13%',
                        options: { 'M': 'Male', 'F': 'Female' },
                        list: true,
                        visibility: 'hidden' //Column will be shown in the filter popup but the first time will be hidden.
                    }
    }
    

    http://www.jtable.org/demo/ColumnHideShow

    In jqGrid could be better that popup is shown after click in a new pager icon...

    show_hide

    opened by danicomas 11
  • Implementation of rowattr callback

    Implementation of rowattr callback

    (copy of the previous pull request)

    Hello Tony,

    I posted some time before the suggestion to implement rowattr callback with the functionality close to cellattr. The pool request contains the implementation of the suggestion.

    In main difference to cellattr is the format of return value which should be an object and not a string, so be implemented like in the example

    rowattr: function (rowData, inputRowData) {
        return rowData.closed ? {class: "myRowClass"} : {};
    }
    

    or

    rowattr: function (rowData, inputRowData) {
        return rowData.closed ? {style: "background:yellow"} : {};
    }
    

    It simplifys the analyzing. The usage of it in the form ' class="mystyle"' should be parsed more carefully (celp.indexOf('style') > -1, but we have no style attribute inside).

    The demo uses XML and another uses JSON as input. The demos use modified version of grid.base.js.

    The first parameter of rowattr callback - rowData parameter has "named format" (object with the properties like in name from items of colModel). The format is the same for XML and JSON and it's not depend from jsonReader or xmlReader settings. The second parameter inputRowData is the row exactly like it be in the input data.

    Additional advantage is that one have now rd variable which can be used as additional parameter of addCell which will be forwarded to formatter. So one could add later one more parameter to custom formatter to have the same format of input data in case of first loading of data and the call of the next time (in case of loadonce: true option).

    Best regards Oleg

    Signed-off-by: Dr. Oleg Kiriljuk [email protected]

    opened by OlegKi 11
  • Vue3 + typescript support

    Vue3 + typescript support

    I'm existing JQGrid user since many years ago. We wish to migrate our software into vue3/typescript environment. Can I know how far JQgrid support it?

    opened by kstan79 3
  • Vurtual Scroll on mobile

    Vurtual Scroll on mobile

    Good morning, I have a problem using virtual scroll on mobile devices. In the desktop version it works correctly but on the mobile it shows only the first page, when I get to the end of the block nothing happens and I scroll down the entire browser page. To my configuration I have only added: scroll: 1, emptyrecords: 'Scroll down', Do you have suggestions?

    Problem 
    opened by nemo3000 1
  • Enhancement: Add maxWidth-Property to colModel-options

    Enhancement: Add maxWidth-Property to colModel-options

    Hi Tony.

    I would like to have an option to set the maximum width of a column. I often have the requirement that the width of one or more columns should be adjusted automatically, but must not be larger than a defined value. I've already tried to achieve this via the max-width CSS option that I set for all affected td elements, but failed. Apparently this attribute is not included in the column width calculation done by jqGrid. Would such an option be possible - or is there a way to achieve the desired result that I haven't thought of yet?

    Thank you in advance, Robert

    Enhancement Question 
    opened by SKPFCW 18
  • Possible bug in processing custom-element fields in an edit form

    Possible bug in processing custom-element fields in an edit form

    Hi Tony,

    I'm having some trouble with implementing a Custom Element and going through the jqGrid code I see something strange. Perhaps you can help to clarify whether this is a problem or not.

    I'm trying to implement an HTML5 input with datalist. You even have a nice article written on this topic. But my element needs to work somewhat like a "select", returning a "key" instead of the actual value in the input. This means that the custom-value function is critical for reading the correct value out of this field.

    When creating a Custom Element in form-edit mode, the HTML structure looks like this:

    <td class="DataTD">
        <span class="FormElement">
            <input class="FormElement customelement">    <!-- This is added by my custom-element function -->
        </span>
    </td>
    

    As you can see, both the "span" and the "input" have the "FormElement" class. Now my problem is in the "getFormData()" function of jqGrid (see below).

    In line #11467 we pull out all the items with ".FormElement". This would include both the "span" AND the "input". Then in line #11468 we pull out all the items with ".customelement" INSIDE the ".FormElement". When we do that for the "span", we get the "input" which is inside. But when we do that for the "input" itself, we get an EMPTY list!

    Now the problem is that in line #11469 we check if the list is empty and if it is, we try to read the item as a "non-custom". Eventually we reach line #11508 and then just read the simple value out of the "input". In my case, I see the custom-value function IS being called once and IS returning the correct data, but eventually jqGrid is sending the raw value of the input item to the server. Since we are reading the value for the same "name" twice, the later will override the former. Eventually the value received from the custom-value function will be overridden.

    Is this a bug?

    https://github.com/tonytomov/jqGrid/blob/a00419ffaced1f62fef16e09c0d4c6e28509c987/js/jquery.jqGrid.js#L11465-L11509

    opened by unle70 3
  • setCell not applying formatter

    setCell not applying formatter

    Looks to me that when using the "setCell" method, the value is going into the grid without applying the set formatter. My questions:

    1. Am I correct in my observation or is it just something in my environment?
    2. Is this a bug or a feature? :)
    3. If this is done on purpose, is there a function call I can make by myself to apply the set formatter before calling setCell?

    Thanks, Udi

    opened by unle70 2
Releases(v5.8.0.0)
  • v5.8.0.0(Dec 20, 2022)

  • v5.7.0(Mar 9, 2022)

    This version is a minor release and add a lot of new features in improvements –

    • Transposed Grid
    • Frozen Rows
    • Search by column and much more.
    • As usual the version has a numerous bug fixes.
    Source code(tar.gz)
    Source code(zip)
Owner
Tony Tomov
Tony Tomov
Grid based on CSS3 flexbox

Flexbox Grid flexboxgrid.com Grid based on the flex display property. Install npm npm i flexboxgrid --save bower bower install flexboxgrid cdn CDNJS <

kj 9.3k Dec 31, 2022
JavaScript data grid with a spreadsheet look & feel. Works for React, Angular, and Vue. Supported by the Handsontable team ⚡

Handsontable is a JavaScript component that combines data grid features with spreadsheet-like UX. It provides data binding, data validation, filtering

Handsontable 17.4k Dec 28, 2022
Nice, sleek and intuitive. A grid control especially designed for bootstrap.

jQuery Bootgrid Plugin Nice, sleek and intuitive. A grid control especially designed for bootstrap. Getting Started jQuery Bootgrid is a UI component

Rafael Staib 976 Dec 16, 2022
A JQuery plugin to create AJAX based CRUD tables.

What is jTable http://www.jtable.org jTable is a jQuery plugin used to create AJAX based CRUD tables without coding HTML or Javascript. It has several

Volosoft 1.1k Dec 21, 2022
Live searching/filtering for HTML tables in a jQuery plugin

jQuery Filter Table Plugin This plugin will add a search filter to tables. When typing in the filter, any rows that do not contain the filter will be

Sunny Walker 175 Oct 29, 2022
jQuery plugin to make HTML tables responsive

FooTable V3 This is a complete re-write of the plugin. There is no upgrade path from V2 to V3 at present as the options and the way the code is writte

FooPlugins 2.1k Dec 19, 2022
jQuery plugin to show a tree structure in a table

jQuery treetable jQuery treetable is a plugin for jQuery, the 'Write Less, Do More, JavaScript Library'. With this plugin you can display a tree in an

Ludo van den Boom 734 Nov 14, 2022
jQuery plugin for stacking tables on small screens

stacktable.js The Responsive Tables jQuery plugin for stacking tables on small screens. The purpose of stacktable.js is to give you an easy way of con

John Polacek 1k Nov 30, 2022
A stupidly small and simple jQuery table sorter plugin

Stupid jQuery Table Sort This is a stupid jQuery table sorting plugin. Nothing fancy, nothing really impressive. Overall, stupidly simple. Requires jQ

Joseph McCullough 708 Dec 26, 2022
jQuery plugin to export a html table to JSON, XML, CSV, TSV, TXT, SQL, Word, Excel, PNG and PDF

tableExport.jquery.plugin Export HTML Table to CSV DOC JSON PDF PNG SQL TSV TXT XLS (Excel 2000 HTML format) XLSX (Excel 2007 Office Open XML format)

null 918 Dec 29, 2022
An Obsidian plugin to provide an editor for Markdown tables

An Obsidian plugin to provide an editor for Markdown tables. It can open CSV data and data from Microsoft Excel, Google Sheets, Apple Numbers and LibreOffice Calc as Markdown tables from Obsidian Markdown editor.

Ganessh Kumar 112 Dec 31, 2022
Grid-tool - Small tool that allows you to integrate a predefined or generated grid into your front-end development environment.

Grid tool Small tool that allows you to integrate a predefined or generated grid into your front-end development environment. Tool installation includ

hmongouachon 2 Jan 4, 2022
A jQuery plugin that displays a thumbnail grid expanding preview similar to the effect seen on Google Images.

jQuery GRIDDER 1.4.2 ======= A jQuery plugin that displays a thumbnail grid expanding preview similar to the effect seen on Google Images. We have all

Orion Gunning 455 Nov 6, 2022
jQuery grid plugin

jqGrid jQuery grid plugin jqGrid is an Ajax-enabled JavaScript control that provides solutions for representing and manipulating tabular data on the w

Tony Tomov 2.8k Jan 7, 2023
Lightweight Grid jQuery Plugin

jsGrid Lightweight Grid jQuery Plugin Project site js-grid.com jsGrid is a lightweight client-side data grid control based on jQuery. It supports basi

Artem Tabalin 1.5k Dec 31, 2022
A jQuery plugin that displays a thumbnail grid expanding preview similar to the effect seen on Google Images.

jQuery GRIDDER 1.4.2 ======= A jQuery plugin that displays a thumbnail grid expanding preview similar to the effect seen on Google Images. We have all

Orion Gunning 455 Nov 6, 2022
Freewall is a cross-browser and responsive jQuery plugin to help you create grid, image and masonry layouts for desktop, mobile, and tablet...

Freewall Freewall is a cross-browser and responsive jQuery plugin to help you create many types of grid layouts: flexible layouts, images layouts, nes

Minh Nguyen 1.9k Dec 27, 2022
Simple, responsive and lightweight Masonry Grid jQuery Plugin.

jquery-masonry-grid Simple, responsive and lightweight Masonry Grid jQuery Plugin. Installation Add the script before closing the <body> tag (make sur

Peter Breitzler 8 Jun 9, 2022
jQuery plugin that combines the functionality of a grid with that of an accordion.

Grid Accordion - jQuery plugin A responsive and touch-enabled jQuery grid accordion plugin that combines the functionality of a grid with that of an a

null 1 Dec 16, 2022
Mason.js for creating a perfect grid with jQuery.

MasonJS Mason.js is a jQuery plugin that allows you to create a perfect grid of elements. This is not Masonry, or Isotope or Gridalicious. Mason fills

Drew Dahlman 1.2k Nov 19, 2022