使用phpgrid创建动态链接

时间:2015-02-24 06:43:25

标签: php 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");

现在显示:

  

本地主机/ reskb / IB / detail.php?kbid = 1143

但我需要像

一样
  

本地主机/ reskb / IB / detail.php偏移= 0&安培; KBID = 4916

这里的偏移是行号。

2 个答案:

答案 0 :(得分:5)

您正在尝试操纵超链接以通过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

答案 1 :(得分:0)

你的意思是行号或号码还是其中之一?行id是行的主键的值。

在这里,您可以使用hack将javascript附加到查询字符串后面。

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