使用jqGrid 4.5.2& jQuery 1.9.1并将XML文件作为输入读入网格。一个单元格具有指向文件的路径。该文件可能有几种不同的类型(.doc,.htm,.pdf等)。
在显示网格时,我需要让该单元格成为该文件共享的超链接。使用链接的预定义格式类型,它确实提供了一个超链接,但它将Web服务器信息放在链接前面,例如:
http://localhost:55555/\\servername\filepath1\filepath2\thisdoc.doc
从\\
开始的所有内容都是从XML中检索出来的。如何使单元格的内容成为超链接,但禁止网站信息?
答案 0 :(得分:0)
我会为它编写一个自定义格式化程序,如下所示:
var urlFormatter = function (cellValue, options, rowObject) {
return '<a href="' + cellValue + '">' + cellValue + '</a>';
};
这样结果应该是:
<a href="servername\filepath1\filepath2\thisdoc.doc">
servername\filepath1\filepath2\thisdoc.doc
</a>
更新:
我没有意识到它是一个文件系统URL。在这种情况下修改它:
var urlFormatter = function (cellValue, options, rowObject) {
return '<a href="file:///' + cellValue + '">' + cellValue + '</a>';
};
哪个收益率:
<a href="file:///servername\filepath1\filepath2\thisdoc.doc">
servername\filepath1\filepath2\thisdoc.doc
</a>
这应该有效。之所以以前没有用的原因是浏览器将链接解释为相对链接,但是你想要一个绝对链接到文件系统的一部分。