You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JavaScript获取SharePoint页面的浏览次数

获取SharePoint页面浏览次数的完整实现方案

嘿,我看到你在尝试借助ViewLifeTime属性获取SharePoint页面的浏览次数,刚好可以帮你把这段代码补全并说明细节:

完整JavaScript代码实现

var context; 
var web; 
var list; 
var currentItem; 

function get_Views(){ 
    context = new SP.ClientContext.get_current(); 
    web = context.get_web(); 
    // 获取当前页面所在的列表
    list = web.get_lists().getById(_spPageContextInfo.pageListId); 
    // 获取当前页面对应的列表项
    currentItem = list.getItemById(_spPageContextInfo.pageItemId); 

    // 加载ViewLifeTime属性(即浏览次数)
    context.load(currentItem, 'ViewLifeTime'); 

    // 执行异步查询
    context.executeQueryAsync(
        Function.createDelegate(this, onSuccess),
        Function.createDelegate(this, onFailure)
    );
}

// 查询成功后的回调:获取并展示浏览次数
function onSuccess() {
    var viewCount = currentItem.get_item('ViewLifeTime');
    console.log("当前页面浏览次数:" + viewCount);
    // 可根据需求修改展示位置,比如插入到页面指定元素中
    document.getElementById('viewCountDisplay').innerText = "浏览次数:" + viewCount;
}

// 查询失败后的回调:输出错误信息
function onFailure(sender, args) {
    console.log("获取浏览次数失败:" + args.get_message());
}

// 确保SP.js加载完成后再执行函数(避免对象未定义错误)
SP.SOD.executeFunc('sp.js', 'SP.ClientContext', get_Views);

核心细节说明

  • 依赖SharePoint内置的SP.js客户端对象模型,最后一行的SP.SOD.executeFunc用来确保脚本加载完成后再执行逻辑,避免报错。
  • _spPageContextInfo是页面全局对象,提供了当前页面的列表ID(pageListId)和列表项ID(pageItemId),是定位到当前页面项的关键。
  • ViewLifeTime是SharePoint页面列表项的内置属性,无需额外配置,直接记录页面的累计浏览次数。

使用注意事项

  • 确保当前用户对页面所在列表拥有读取权限,否则会触发权限不足的错误。
  • 经典页面可直接将代码放入脚本编辑器/内容编辑器Web部件;现代页面需通过SPFx Web部件或自定义脚本注入方式添加(现代页面默认禁止直接插入自定义脚本)。

内容的提问来源于stack exchange,提问作者RBK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:27:01