一世 可以看到 如何使用以下方式创建JQGrid链接:

colModel: [ {name:'myname', 
             formatter:'showlink', 
             formatoptions:{baseLinkUrl:'someurl.php', addParam: '&action=edit'}

这会创建一个请求 /someurl.php?id=XX&action=edit 显示文本将是 myname.

但是就我们而言,我们不需要 myname 文本 - 我们的显示文本将进行硬编码。我们不想在JSON请求中传递任何其他数据 - 但似乎您需要每列的JSON属性。如果没有添加JSON列,我们如何才能获得链接?

有帮助吗?

解决方案

格式化 'showlink' 像所有其他格式化者一样 格式化JQGrid中加载的数据 从服务器或本地数据。因此,如果您的示例,您将在链接中没有“ myName”文本(列名),但是 单元格值 来自网格。

因此,如果您想使用 预定义的格式 'showlink' 你有 填写列数据 带有希望在链接中看到的文本。您可以在JSON数据内部执行此操作,也可以在加载页面后填写/覆盖文本 负载complete 事件处理:

loadComplete: function() {
    var grid = $("list");
    var ids = grid.getDataIDs();
    for (var i = 0, idCount = ids.length; i < idCount; i++) {
        grid.setCell(id, 'myname', 'My text for link');
    }
}

您也可以使用 自定义格式自定义不形式 代替 'showlink' 预定义的格式. 。然后,您可以像想要的那样定义链接文本,而无需填写网格中的任何数据。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top