如何为sitecore发布表单中的语言复选框触发oncheckchanged事件

时间:2015-03-25 04:56:40

标签: sitecore sitecore7 sitecore7.1

我们正在使用Sitecore 7.1版本,我们有多个发布目标和多种语言。我们需要做的是,在发布时为任何项目选择中文,然后为中国发布目标(比如Internet-China) )应该自动选择,当用户选择任何其他语言时,应自动选择所有其他语言(比如Internet)的公共发布目标。

所以基本上我们需要在发布时以发布形式出现所有语言的oncheckchanged事件。

任何人都可以帮助我们实现这一目标会很棒。 谢谢, 卡皮尔

1 个答案:

答案 0 :(得分:1)

检查\sitecore\shell\Applications\Dialogs\Publish\Publish.js文件。它已包含检查或取消选中All Languages复选框的代码,同时单击特定语言复选框,反之亦然。您只需要在那里添加代码。

我猜你需要对中文和中国互联网目标的选择器进行硬编码。


修改

看起来上面提到的文件是在7.2版本中添加的。你可以在7.1中自己创建它。只需在Publish.xml添加2个脚本行:

<WizardForm CodeBeside="Sitecore.Shell.Applications.Dialogs.Publish.PublishForm,Sitecore.Client">
  <Script Src="/sitecore/shell/Controls/Lib/jQuery/jQuery.noconflict.js"></Script>
  <Script Src="/sitecore/shell/Applications/Dialogs/Publish/Publish.js"></Script>

创建提到的publish.js文件

jQuery(document).ready(function ($) {
    $('#Languages').find(':checkbox').click(function () {
        // if checkbox is checked and its value is Chinese id, select Internet-China target

        // if checkbox is checked and its value is not Chinese id, select Internet target
    });
});