Sitecore Formsの非表示セクションの検証が矛盾した挙動を引き起こす


説明

Sitecore Forms 9.1.0~9.3.0では、特定の条件によってセクションを表示または非表示にする際、非表示のセクションのフィールド検証が失敗する恐れがあります。例えば、フォームが送信できなくなったり、または複数ページのフォームの場合、その前のページに戻す際に、フィールドの検証が失敗したりする恐れがあります。

解決策

この事象を解決するには、以下の回避策を適用してください:

  1. \sitecore\modules\Web\ExperienceForms\scripts\form.conditions.jsファイルを開きます。
  2. 以下の行を:
     $target.slideDown();
    以下の行に書き換えます:
    // Start of Sitecore.Support.341616 
    // $target.slideDown();
    var $self = this;
    $target.slideDown(function () {
    $self.setRequired($target);
    });
    return;
    // End of Sitecore.Support.341616
  3. 以下の行を:
     $target.slideUp();
    以下の行に書き換えます:
    // Start of Sitecore.Support.341616 
    // $target.slideUp();
    var $self = this;
    $target.slideUp(function () {
    $self.setRequired($target);
    });
    return;
    // End of Sitecore.Support.341616
  4. ブラウザのキャッシュを削除します。