我正在使用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)+"');