1

は条件付きで別のフィールドの選択サイトコアWFFM MVCカスタムクロスコントロールの検証

  • DynamicValidationBaseに基づいて要求される分野でのカスタム検証を実施するためのサイトコアWFFM MVCにおける方法はあります":これは、この検証がフォームの詳細(フォーム上の他のコントロール)にアクセスできるフィールドに適用される、属性付きの検証です。

  • FormCustomValidator」:これは「MVCフォーム」として起動されません。

例:

<style> 
 
    div{padding:10px 0;} 
 
ul{ 
 
    list-style:none; 
 
} 
 
</style> 
 

 
    <div> 
 
    <label for="Email">Email:</label> 
 
    <input type="text" name="Email"/> 
 
    </div> 
 
    <div> 
 
    <label for="Phone">Phone:</label> 
 
    <input type="text" name="Phone"/> 
 
    </div> 
 
    <div> 
 
    <label for="IPrefer">I Prefer:</label> 
 
    <ul> 
 
     <li> 
 
     <input type="radio" id="rdo_email" checked="checked" name="rdoPreferType"/> 
 
     <label for="rdo_email">Email</label> 
 
     </li> 
 
     <li> 
 
     <input type="radio" id="rdo_phone" name="rdoPreferType"/> 
 
     <label for="rdo_phone">Phone</label> 
 
     </li> 
 
    </ul> 
 
    </div>

答えて

1

RequiredIfPopulatedAttribute - まず、カスタム属性は、カスタムフィールドを飾るために必要とされます。これにより、フォームからクライアント側に必要なデータが供給され、検証および検証エラーメッセージが作成されます。

カスタムフィールドクラス - 次に、目的のフィールドを継承するカスタムフィールドを作成しますが、上記の属性をValueプロパティに追加します。

カスタムフィールドビュー - このmvcビューのプレゼンテーションに任意のカスタマイズを追加します。モデルが上記のカスタムクラスであることを確認してください。この.cshtmlファイルを他のWFFMビューと共に保存します。

Javascriptを - JS次のバリデータの追加: $ scw.validator.addMethod() $ scw.validator.unobtrusive.adapters.add()

サイトコアのアップデート - は、カスタムクラスを参照FIELDTYPEを作成します。 [MVCタイプ]フィールドに入力します。 この新しいカスタムFieldTypeを、フォームデザイナのタイプフィールドとして参照します。 フォームフィールドのParametersフィールドには、カスタムフィールドのプロパティを供給する値のリストが含まれています。

上記は、これを達成するための手順の概要です。イラストについては、https://soyouwannasitecore.wordpress.com/2016/10/27/sitecore-wffm-required-if-outlined/

をご覧ください。