Sitecore SPEAK - 以编程方式设置搜索数据源根目录
Sitecore SPEAK - set searchdatasource root programmatically
我最近一直在玩SPEAK dialog。到目前为止,我喜欢它,但偶然发现了一个问题。我已经在 url 参数中使用了 itemID,我想在列表控件中显示此项的子项。
我的方法是创建一个SearchDataSource,并通过javascript设置字段"rootItemId"。这似乎行不通。有没有办法在PageCode中访问SearchDataSource的rootItemId?
我最近使用的另一种方法是在这里使用 Anders Laub 的 JSON 数据源控件。 http://laubplusco.net/creating-simple-sitecore-speak-json-datasource/。
然后,从 JavaScript PageCode 中,您可以执行 Ajax 调用并追加 JSON 结果项以填充列表控件,其中列表控件绑定到 JSON 数据源 Json 属性。
$.ajax({
url: "/api/sitecore/RolePermissions/GetAllRoles",
type: "POST",
context: this,
success: function (data) {
var json = jQuery.parseJSON(data);
for (var i = 0; i < json.length; i++) {
var obj = json[i];
this.JsonDS.add(obj);
}
}
});
我设法用查询来做到这一点。在页面代码中:
public class SelectTitle : PageCodeBase
{
//Fetches DataSource as rendering
public Rendering DataSource { get; set; }
public override void Initialize()
{
var articleid = WebUtil.GetQueryString("article");
if (!String.IsNullOrEmpty(articleid))
{
//Set the query.
this.DataSource.Parameters["query"] =
String.Format("fast:/some/path/*[@@id = '{0}']/Elements/*[@@templateid = '{1}']", articleid, '{guid}');
}
}
}
相关文章:
- 如何设置“;search_type”;在弹性搜索js
- 正在尝试为Docpad网站设置Lunr全文搜索插件.我做错了什么
- Javascript中与区域设置无关的字符串搜索
- 搜索包含值的json对象键,然后取消设置
- JavaScript 设置具有对数搜索时间的数据结构
- 当用户使用JavaScript键入内容时,如何设置以搜索输入为中心
- 使用引导表插件,如何在首次加载时设置搜索字符串
- Select2 以编程方式设置搜索词并打开包含相关结果的下拉列表(无 ajax 调用)
- 通过jquery在数据表中设置“搜索框”的值为空
- 根据按 id 搜索将数据库的值设置为文本框
- 在 Google 自定义搜索 iFrame 中设置内容的样式
- Sitecore SPEAK - 以编程方式设置搜索数据源根目录
- Chrome:设置window.location.hash会导致“在页面中查找”搜索框消失
- 如何设置样式/检测从页面中的浏览器本机搜索生成的突出显示框
- 在Sencha touch中的搜索字段上设置列表值
- 谷歌如何在搜索结果点击后设置HTTP Referrer
- 我可以使用按钮来调用函数,但不能从搜索设置的if语句中调用,但可以调用任何其他函数
- 设置搜索参数的javascript谷歌驱动api
- 使用Javascript CSOM在SharePoint 2013中设置搜索中心URL
- 如何在点击按钮时设置搜索框的动画