如何使用功能区工具栏按钮重定向到Tridion中的不同页面?

如何使用功能区工具栏按钮重定向到Tridion中的不同页面?,tridion,tridion-2011,Tridion,Tridion 2011,我正在实现功能区工具栏按钮。根据模式名称,单击按钮时,我需要创建带有相应url的弹出窗口(Aspx页面)。以前,我只使用了一个aspx页面,并且在相同的方面取得了成功,我创建了一个与aspx页面同名的弹出式java脚本文件,并在配置文件中对其进行了配置。但是如果有多个aspx页面,即使我创建了多个弹出式javascript文件,它也不会调用受尊重的javascript文件 如果有多个aspx页面,如何将弹出的java脚本文件映射到aspx页面 PFB代码示例 Button java script

我正在实现功能区工具栏按钮。根据模式名称,单击按钮时,我需要创建带有相应url的弹出窗口(Aspx页面)。以前,我只使用了一个aspx页面,并且在相同的方面取得了成功,我创建了一个与aspx页面同名的弹出式java脚本文件,并在配置文件中对其进行了配置。但是如果有多个aspx页面,即使我创建了多个弹出式javascript文件,它也不会调用受尊重的javascript文件

如果有多个aspx页面,如何将弹出的java脚本文件映射到aspx页面

PFB代码示例

Button java script file code fragment:

if (some condition) {
         //Creating the url    
         var url = "Editors/RTFExtension/Popups/ButtonReferencePopup_2.aspx?schemaId='" + schemaId + "'";
         var popup = $popup.create(url, "toolbar=no,width=500,height=200,resizable=yes,scrollbars=yes", null);
}
else{
        //Creating the url    
        var url = "Editors/RTFExtension/Popups/ButtonReferencePopup.aspx?schemaId='" + schemaId + "'";
        var popup = $popup.create(url, "toolbar=no,width=500,height=200,resizable=yes,scrollbars=yes", null);
}

Config file code fragment:

<cfg:group name="RTFExtension.ButtonReference">
        <cfg:fileset>          
          <cfg:file type="script">/Popups/ButtonReferencePopup.js</cfg:file>
          <cfg:file type="script">/Popups/ButtonReferencePopup_2.js</cfg:file>
          <cfg:file type="style">/Themes/ButtonReference.css</cfg:file>
        </cfg:fileset>       

        <cfg:dependencies>
          <cfg:dependency>Tridion.Web.UI.Controls</cfg:dependency>
          <cfg:dependency>Tridion.Web.UI.Editors.CME</cfg:dependency>
          <cfg:dependency>Tridion.Web.UI.Editors.CME.commands</cfg:dependency>
        </cfg:dependencies>
</cfg:group>
按钮java脚本文件代码片段:
如果(某些条件){
//创建url
var url=“Editors/RTFExtension/Popups/ButtonReferencePopup_2.aspx?schemaId=”+schemaId+”;
var popup=$popup.create(url,“工具栏=否,宽度=500,高度=200,可调整大小=是,滚动条=是”,null);
}
否则{
//创建url
var url=“Editors/RTFExtension/Popups/ButtonReferencePopup.aspx?schemaId=”“+schemaId+””;
var popup=$popup.create(url,“工具栏=否,宽度=500,高度=200,可调整大小=是,滚动条=是”,null);
}
配置文件代码片段:
/弹出窗口/按钮引用pup.js
/弹出窗口/按钮引用pup_2.js
/主题/按钮引用.css
Tridion.Web.UI.Controls
Tridion.Web.UI.Editors.CME
Tridion.Web.UI.Editors.CME.commands

请帮我解决这个问题。提前谢谢。欢迎尽早回复。

我认为您需要为每个配置配置不同的组-类似于以下内容:


/弹出窗口/按钮引用pup.js
/主题/按钮引用.css
Tridion.Web.UI.Controls
Tridion.Web.UI.Editors.CME
Tridion.Web.UI.Editors.CME.commands
/弹出窗口/按钮引用pup_2.js
/主题/按钮引用.css
Tridion.Web.UI.Controls
Tridion.Web.UI.Editors.CME
Tridion.Web.UI.Editors.CME.commands
在弹出代码中,您需要参考相关组:

namespace Button.Reference.Popups
{
[ControlResourcesDependence(新类型[]{typeof(弹出)、typeof(Tridion.Web.UI.Controls.Button)、typeof(堆栈)、typeof(下拉)、typeof(列表)}]
[ControlResources(“RTFExtensions.ButtonReference.Popup1”)]
公共部分类PopupReference1:TridionPage
或:

namespace Button.Reference.Popups
{
[ControlResourcesDependence(新类型[]{typeof(弹出)、typeof(Tridion.Web.UI.Controls.Button)、typeof(堆栈)、typeof(下拉)、typeof(列表)}]
[ControlResources(“RTFExtensions.ButtonReference.Popup2”)]
公共部分类PopupReference2:TridionPage

您已经尝试了什么?如果您共享了相关的代码/配置,我们可以看到您出了什么问题。什么对您不起作用?看起来您已经完成了我预期的工作-即,在JS中有一些逻辑,为$popup设置了一个不同的URL以打开…如果它与一个弹出窗口一起工作,那么您应该可以只重复一次为其他弹出窗口复制配置。@JeremyGrand Scrutton感谢您的快速回复。在我的场景中,我有两个不同的aspx文件和两个不同的JS文件。我可以根据JS文件中的逻辑打开不同的弹出窗口。但是打开的弹出窗口没有绑定到相应的JS文件。所有打开的弹出窗口即使在配置文件中将JS文件作为资源添加后,弹出窗口也绑定到单个JS文件。您的建议将对我帮助很大。提前感谢。虽然不完全是扩展名,但另一个连接每个架构甚至每个字段弹出窗口的位置是在
自定义url
s中。它对我很有用。非常感谢您的帮助。再次感谢。