gpt4 book ai didi

javascript - SharePoint 2013 列表搜索框和客户端站点呈现 (JSLink)

转载 作者:行者123 更新时间:2023-11-28 01:33:08 24 4
gpt4 key购买 nike

我正在尝试实现常见问题解答 Accordion SharePoint 列表。我在使用 JSLink 时设法让 Accordion 工作。遗憾的是,搜索工作无法正常进行。我在 JSLink js 中使用了以下代码:

(function () {
/*
* Initialize the variable that store the overrides objects.
*/
var overrideCtx = {};
overrideCtx.Templates = {
Header: function(ctx) {
var headerHtml = RenderTableHeader(ctx);
headerHtml += "</table>";
headerHtml += "<div id='accordion'>";
return headerHtml;
},
Footer: function (ctx) {
return "</div>";
},
Item: function(ctx) {
// Build a listitem entry for every announcement in the list.
var ret = "<h3 class='OutlookFAQ'>"+ctx.CurrentItem.Title+"</h3><div style='display:none;' class='OutlookFAQContent'><p>"+ctx.CurrentItem.Answer+"</p></div>";
return ret;
}

};


overrideCtx.BaseViewID = 1;
overrideCtx.ListTemplateType = 100;



overrideCtx.OnPostRender = [];
overrideCtx.OnPostRender.push(function()
{
$('#accordion h3').click(function(e) {
$(e.target).next('div').siblings('div').slideUp();
$(e.target).next('div').slideToggle();
});
});

SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideCtx);

})();

令我难过的是, Accordion 正在工作,搜索框正在显示。如果我尝试提交搜索,sp.ui.listsearchbox.js 中会弹出 JS 错误“TypeError: this.$T_3 is null”。有什么想法吗?

问候

雷内

最佳答案

出现此错误的原因是缺少 Search Status 元素,该元素是搜索控件的一部分并在 Footer 模板中呈现

搜索状态

搜索状态元素用于显示有关搜索结果的提示。RenderSearchStatus函数用于渲染搜索状态

enter image description here

解决方案

替换页脚渲染模板

Footer: function (ctx) {
return "</div>";
}

Footer: function (ctx) {
var footerHtml = "</div>";
footerHtml += RenderFooterTemplate(ctx); //render standard footer (pager, search status)
return footerHtml;
}
<小时/>

博客文章Customize the rendering of a List View in Sharepoint 2013: Displaying List Items in Accordion包含呈现为 Accordion 的 ListView 的工作示例。

关于javascript - SharePoint 2013 列表搜索框和客户端站点呈现 (JSLink),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21850439/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com