在AEM的Touch UI对话框中从外部服务动态加载选择选项?

时间:2018-04-12 04:57:01

标签: aem cq5 aem-6 aem-touch-ui

我的问题是在带有动态选项的触摸UI对话框中加载选择字段。这些选项来自外部URL通过webservices,我使用在我们的一个全局javascript对象中定义的url来使用这个RESTful服务,如

$.get(mec.serviceConfig.baseUrl + '/movies';

请理解这些选项来自第三方网络服务请不要提及数据源。每当我搜索动态加载选择选项时,我都会得到本教程

Link to Tutorial 这不是我想要的。

在经典UI中,使用optionsProvider很容易。

在触摸UI中,我试图编写一个脚本,通过AJAX ON DIALOG加载从外部Web服务获取数据,并在选择字段中设置这些选项。

还有更简单的方法吗?有人可以分享代码片段吗?

1 个答案:

答案 0 :(得分:1)

您应该为您的组件创建JS侦听器。

$document.on("dialog-ready", function() {
// there you should find your select field 
//for example
var language = $("[name='./language']").closest(".coral-Select");
//then append to your select field new options from your datasource
});

请参阅文档:Dynamically updating AEM TouchUI Dialog Select Fields