SharePoint 2013 JSLink OnPostRender

SharePoint 2013 JSLink OnPostRender

我使用 JSLink 为 SharePoint 2013 任务列表着色。

这段代码是调用'HiglightRowOverride'函数的入口点:

(function () {
var overrrideCtx = {};

overrrideCtx.Templates = {};
overrrideCtx.OnPostRender = [HiglightRowOverride];

SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrrideCtx);})();

在第一次加载带有列表的页面时,有时会执行 JS。

当我使用 F5 刷新页面时,JS 总是被执行。

当我再次点击左侧边栏列表的link时(列表已经打开)页面刷新但我的JS没有执行。我用 Chrome JS 调试器调试了它。

不知道为什么JS有时执行有时不执行。 你能帮帮我吗?

也许您运行喜欢 SP2013 的 "MDS"(最小下载策略)功能。

如果您的站点启用了 MDS,请确保您使用 RegisterModuleInit() 将模板覆盖代码注册为模块。

详情可以看这篇文章:http://blogs.msdn.com/b/sridhara/archive/2013/02/08/register-csr-override-on-mds-enabled-sharepoint-2013-site.aspx