Event Archives | phpGrid - PHP Datagrid Create PHP grids in minutes, not hours. Tue, 03 Dec 2024 18:29:45 +0000 en-US hourly 1 CodeProjecthttps://wordpress.org/?v=7.0.3 129966043 Hyperlink to Call JavaScript Function https://phpgrid.com/example/call-javascript-function-on-hyperlink-click/ Sun, 15 Jul 2012 20:59:37 +0000 http://phpgrid.com/?p=2199 You can show hyperlink using set_col_link for static link or set_col_dynalink for dynamic link. What about if you want to do something even fancier, like open a new window, or trigger a JavaScript event when hyperlink is clicked? To call JavaScript function on hyperlink click, use “showlink” in set_col_format method. In the following example, the […]

The post Hyperlink to Call JavaScript Function appeared first on phpGrid - PHP Datagrid.

]]>
You can show hyperlink using set_col_link for static link or set_col_dynalink for dynamic link. What about if you want to do something even fancier, like open a new window, or trigger a JavaScript event when hyperlink is clicked?

To call JavaScript function on hyperlink click, use “showlink” in set_col_format method.

In the following example, the first set_col_format displays text in alert window using JavaScript function “myFunction” to retrieved text from a different cell in the same row. The second does a phpgrid.com site search using jQuery Ajax function “phpGridSiteAjaxSearch”, and displays the result in a alert message window.

PHP:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// Always include namespace and conf.php on TOP of the script.
use phpCtrl\C_DataGrid;
require_once("/file/path/to/conf.php");  

$dg = new C_DataGrid("select * from products", "productCode", "products");
$dg -> set_col_title("productCode", "Product Code");
$dg -> set_col_title("productName", "Product Name");
$dg -> set_col_title("productLine", "Product Line");

$dg->set_col_format("productLine", "showlink", array("baseLinkUrl"=>"javascript:", "target"=>"_self",
"showAction"=>"myFunction(jQuery('#products'),'",
"addParam"=>"');"));

$dg->set_col_format("productName", "showlink", array("baseLinkUrl"=>"javascript:", "target"=>"_self",
"showAction"=>"phpGridSiteAjaxSearch(jQuery('#products'),'",
"addParam"=>"');"));
$dg -> display();

JavaScript:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
myFunction = function(grid, param) {
    var ar = param.split('=');
    if (grid.length > 0 && ar.length === 2 && ar[0] === '?id') {
        var rowid = ar[1];
        var prodDesc = grid.getCell(rowid, 'productDescription');

        alert(prodDesc);
    }
};

phpGridSiteAjaxSearch = function(grid, param) {
    var ar = param.split('=');
    if (grid.length > 0 && ar.length === 2 && ar[0] === '?id') {
        var rowid = ar[1];
        var productName = grid.getCell(rowid, 'productName');

        jQuery.ajax({
            url: 'https://phpgrid.com',
            data: {
                s: productName
            },
            type: 'GET',
            dataType: 'text',
            success: function(data, status) {
                // your code goes here for a successul Ajax call .e.g open a new window
                alert(data);
            },
            error: function(data, status, err) {
                alert(data + status);
            }
        });
    }
};

See Live Example

The post Hyperlink to Call JavaScript Function appeared first on phpGrid - PHP Datagrid.

]]>
2199
add_event() https://phpgrid.com/documentation/add_event/ Sun, 15 Jul 2012 04:59:05 +0000 http://phpgrid.com/?p=2174 Parameter(s): $event_name: Event name from one of the following available events jqGrid events   jqGridAfterAddRow jqGridAfterChangeRowid jqGridAfterDelRow jqGridAfterInsertRow jqGridAfterLoadComplete jqGridAfterSetRow jqGridAfterResizeDblClick jqGridBeforeInitGrid jqGridBeforeProcessing jqGridBeforeRequest jqGridBeforeSelectRow jqGridGridComplete jqGridLoadBeforeSend jqGridLoadComplete jqGridDblClickRow jqGridHeaderClick jqGridInitGrid jqGridPaging jqGridRightClickRow jqGridSelectAll jqGridSelectRow jqGridShowHideCol jqGridSortCol jqGridRemapColumns jqGridResizeDblClick jqGridResizeStart jqGridResizeStop jqGridResetFrozenHeights   Grouping event   jqGridGroupingClickGroup   Form editing events   jqGridAddEditAfterClickPgButtons jqGridAddEditAfterComplete jqGridAddEditAfterShowForm […]

The post add_event() appeared first on phpGrid - PHP Datagrid.

]]>
  • Parameter(s):
    • $event_name: Event name from one of the following available events
        • jqGrid events

           

        • jqGridAfterAddRow
        • jqGridAfterChangeRowid
        • jqGridAfterDelRow
        • jqGridAfterInsertRow
        • jqGridAfterLoadComplete
        • jqGridAfterSetRow
        • jqGridAfterResizeDblClick
        • jqGridBeforeInitGrid
        • jqGridBeforeProcessing
        • jqGridBeforeRequest
        • jqGridBeforeSelectRow
        • jqGridGridComplete
        • jqGridLoadBeforeSend
        • jqGridLoadComplete
        • jqGridDblClickRow
        • jqGridHeaderClick
        • jqGridInitGrid
        • jqGridPaging
        • jqGridRightClickRow
        • jqGridSelectAll
        • jqGridSelectRow
        • jqGridShowHideCol
        • jqGridSortCol
        • jqGridRemapColumns
        • jqGridResizeDblClick
        • jqGridResizeStart
        • jqGridResizeStop
        • jqGridResetFrozenHeights
        •  

          Grouping event

           

        • jqGridGroupingClickGroup
        •  

          Form editing events

           

        • jqGridAddEditAfterClickPgButtons
        • jqGridAddEditAfterComplete
        • jqGridAddEditAfterShowForm
        • jqGridAddEditAfterSubmit
        • jqGridAddEditBeforeCheckValues
        • jqGridAddEditBeforeInitData
        • jqGridAddEditBeforeShowForm
        • jqGridAddEditBeforeSubmit
        • jqGridAddEditClickPgButtons
        • jqGridAddEditClickSubmit
        • jqGridAddEditInitializeForm
        • jqGridAddEditSerializeEditData
        •  

          Form view events

           

        • jqGridViewBeforeInitData
        • jqGridViewBeforeShowForm
        •  

          Form deleting events

           

        • jqGridDeleteAfterShowForm
        • jqGridAddEditAfterComplete
        • jqGridDeleteBeforeInitData
        • jqGridDeleteBeforeShowForm
        • jqGridAfterDelRow
        •  

          Searching form

           

        • jqGridFilterAfterChange
        • jqGridFilterAfterShow
        • jqGridFilterInitialize
        • jqGridFilterBeforeShow
        •  

          Inline editing events

           

        • jqGridInlineBeforeAddRow
        • jqGridInlineBeforeCancelRow
        • jqGridInlineBeforeEditRow
        • jqGridInlineBeforeSaveRow
        • jqGridInlineAfterRestoreRow
        • jqGridInlineEditRow
        • jqGridInlineSaveRowValidation
        • jqGridInlineAfterSaveRow
        • jqGridInlineSerializeSaveData
        • jqGridInlineSuccessSaveRow
        • jqGridInlineErrorSaveRow
        •  

          Cell editing events

           

        • jqGridBeforeEditCell
        • jqGridAfterEditCell
        •  

          Subgrid events

           

        • jqGridSerializeSubGridData
        • jqGridSubGridBeforeCollapse
        • jqGridSubGridBeforeExpand
        • jqGridSubGridRowExpanded
    • $js_event_handler: JavaScript event handler to the specified event
  • Description:
  • Remark:
    • This is an advanced method.  The event handlers are essentially JavaScript.
    • Native javascript events are always supported.
  • Example:
  • You can also add event handler directly, even add additional event handler. The following adds dropdown ‘change’ event handler when the edit form shows.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <script type="text/javascript">
    $(function() {
            var grid = jQuery("#orders");

            grid.bind('jqGridAddEditAfterShowForm', () => {
                document.getElementById('status')?.addEventListener('change',
                    () =>  console.log(this)
                );
            })
        });
    </script>

    The post add_event() appeared first on phpGrid - PHP Datagrid.

    ]]>
    2174