仅使用 id 创建 jqGrid 链接
我 可以看到如何使用以下方法创建 jqGrid 链接:
colModel: [ {name:'myname',
formatter:'showlink',
formatoptions:{baseLinkUrl:'someurl.php', addParam: '&action=edit'}
这将创建一个类似于 /someurl.php?id=XX&action=edit
并且显示文本将为myname
的值。
但在我们的例子中,我们不需要 myname
文本 - 我们的显示文本将被硬编码。我们不想在 JSON 请求中传递任何额外的数据 - 但似乎您需要为每列提供一个 JSON 属性。我们怎样才能有一个没有 addl JSON 列的链接?
I can see how to create a jqGrid link using:
colModel: [ {name:'myname',
formatter:'showlink',
formatoptions:{baseLinkUrl:'someurl.php', addParam: '&action=edit'}
This creates a request like /someurl.php?id=XX&action=edit
and the display text will be the value of myname
.
But in our case we don't need the myname
text - our display text will be hard coded. We don't want to have to pass any additional data down in our JSON request - but it seems you need a JSON attribute for each column. How can we have a link without the add'l JSON column?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
与所有其他格式化程序一样,格式化程序
'showlink'
用于格式化从服务器或本地数据加载到jqGrid中的数据。因此,在您的示例中,链接中不会有“myname”文本(列名称),而是网格中的单元格值。因此,如果您想使用 预定义格式化程序
'showlink'
您必须使用想要在链接中看到的文本填充列数据。您可以在 JSON 数据内部执行此操作,也可以在加载页面后填充/覆盖文本,例如在 loadComplete 事件句柄:您还可以使用 自定义格式化程序 和 自定义取消格式化程序而不是
'showlink'
预定义格式化程序。然后您可以根据需要定义链接文本,而无需在网格中填充任何数据。The formatter
'showlink'
like all other formatter are used to format the data loaded in jqGrid from server or from the local data. So in case of your example you will not have 'myname' text (the column name) in the link but the cell value from the grid.So if you want to use predefined formatter
'showlink'
you have to fill the column data with the text which want to see in the link. You can do this either inside of your JSON data or filling/overwriting the text after the page are loaded for example inside of loadComplete event handle:You can use also custom formatter and custom unformatter instead of
'showlink'
predefined formatter. Then you can define the text of link like you want without filling any data in the grid.