javascript 如何在选择Map之前禁用Sitecore自定义提交操作确定按钮

yjghlzjz  于 2023-05-12  发布在  Java
关注(0)|答案(2)|浏览(80)

Sitecore(9.3)我创建了几个自定义提交操作,我注意到在其中一个默认提交操作“触发结果”上,在选择Map之前,确定按钮是禁用的。

一旦您选择了Map,“ok”按钮就会被启用。

我尝试在SCRocks中的项目上设置IsRequired复选框,但它似乎只显示了一个星号 *,而没有禁用它的Required/ok按钮

我追踪了切换代码到一个来源于~/speak/v1/components/ToggleButton. js的文件,我想...但我不太确定这很复杂
这些默认SA中的每一个引用的JS文件的代码都比Sitecore Doc中使用的代码更强大:
Walkthrough: Creating a custom submit action that updates contact details
以前有人经历过吗?我如何做到这一点?
多谢了。

xkrw2x1b

xkrw2x1b1#

是的,您可以通过在自定义提交操作js文件中为ParentApp的字段名称和条件设置一些参数来实现此功能。

kyxcudwk

kyxcudwk2#

这个功能可以通过下面的speak JS文件中的代码来实现。
通过鲍泽控制台窗口检查这个。
screen shot attached for the same
用于启用按钮parentApp.setSelectability(parentApp.pageCode,true)
用于禁用按钮parentApp.setSelectability(parentApp.pageCode,true)
从TriggerOutcome.js检查JS代码下面的行

initialized: function () {

                this.ItemTreeView.on("change:SelectedItem", this.changedSelectedItemId, this);
                this.CurrencyDropList.on("change:SelectedValue", this.changedSelectedItemId, this);

            },

changedSelectedItemId: function () {
                var isSelectable = this.ItemTreeView.SelectedItem.$templateId === outcomeTemplateId && this.CurrencyDropList.SelectedValue;
                parentApp.setSelectability(this, isSelectable, this.ItemTreeView.SelectedItemId);
            },

希望你能弄清楚。谢谢

相关问题