使用phpgrid创建动态链接


Creating dynamic link using phpgrid

我正在使用phpgrid.com数据网格,并希望为我的列"kbid"生成一个动态网格。我在他们的页面上看到了一个例子如下:

$dg -> set_col_dynalink("productCode", "http://www.example.com/", "productCode", '&foo=bar'); 

我做了类似的:

$dg -> set_col_dynalink("kbid", "../ib/detail.php", "kbid");

现在显示:

localhost/reskb/ib/detail.php?kbid=1143

但我需要把它做成

localhost/reskb/ib/detail.php?偏移量=0&KBID=4916

这里的偏移量是行号。

您正试图操纵超链接以通过URL传递附加参数。您必须在使用Javascript的客户端中执行此操作。

以下是phpGrid中的一个示例,当用户单击网格中的超链接时,它会调用javascript函数。链接如下:

http://phpgrid.com/example/call-javascript-function-on-hyperlink-click/

您还需要首先启用行号(http://phpgrid.com/documentation/enable_rownumbers/)

PHP

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

Javascript

    myFunction = function (grid,param) {
        var ar = param.split('=');
        if (grid.length > 0 && ar.length === 2 && ar[0] === '?id') {
            var rowid = ar[1];
            var kbid = grid.getCell(rowid, 'kbid');
            var rowNum = grid.getInd(rowid);
            window.location.href = "http://example.com/?offset="+ rowNum +"&kbid="+kbid;
        }
    };

使用getInd获取行索引,如下所示:http://www.trirand.com/jqgridwiki/doku.php?id=wiki:methods

您指的是行id还是数字?行id是该行的主键的值。

以下是您可以使用黑客将javascript附加到querystring后面的潜在方法。

$dg -> set_col_dynalink("productLine",
    "http://www.example.com/",
    "productName",
    '"+(rowIndex)+"');