我正在尝试使用以下javascript代码(我正在使用JSOM)获取与从SharePoint文档库检索到的文档相对应的图标url / name:
function GetIcon(filename)
{
var context = new SP.ClientContext.get_current();
var web = context.get_web();
var iconName;
iconName = web.mapToIcon(filename, '', SP.Utilities.IconSize.Size16);
var iconUrl = "/_layouts/images/" + iconName.get_value();
alert(iconUrl);
}
我无法观察代码中的任何问题,但它始终显示图标名称为' 0'而不是显示真实的图标名称(即icdoc.gif,ictxt.gif等)。 我错过了什么吗? 请指导我完成这个。
答案 0 :(得分:0)
您的代码适用于我。如果文件不存在且文件扩展名无法识别,它甚至可以工作。此外,似乎不涉及权限。
如果您使用Chrome浏览页面并查看开发人员工具(F12)的网络标签,则可以查看请求的原始响应。请求的名称是“Process Query”。下图显示了我所指的区域。这应该可以让您更深入地了解问题。
答案 1 :(得分:0)
iconName将仅在调用executeQueryAsync
后填充context.executeQueryAsync(function() {
var iconUrl = "/_layouts/images/" + iconName.get_value();
alert(iconUrl);
}, function() { alert("Errors"); });