1

Gibt es eine Möglichkeit in Sitecores WFFM MVC eine benutzerdefinierte Validierung auf einem Feld zu implementieren, die bedingt auf die Auswahl eines anderen Feldes basierend erforderlich istSitecores WFFM MVC Benutzerdefinierte Kreuz Steuer Validierung

  • "DynamicValidationBase ": - Dies ist eine attributierte Validierung, bei der diese Validierung auf das Feld angewendet wird, das Zugriff auf die Formulardetails hat (andere Steuerelemente im Formular).

  • "FormCustomValidator": - Dies wird nie ausgelöst, da dies eine "MVC Form" ist.

Ex:

<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>

Antwort

1

RequiredIfPopulatedAttribute - Zuerst wird ein benutzerdefiniertes Attribut wird benötigt, um das benutzerdefinierte Feld zu dekorieren. Dadurch werden die erforderlichen Daten aus dem Formular an die Clientseite gesendet, um die Validierungs- und Validierungsfehlermeldung zu erstellen.

Benutzerdefinierte Feldklasse - Erstellen Sie als Nächstes ein benutzerdefiniertes Feld, das vom gewünschten Feld erbt, aber fügen Sie das obige Attribut zur Value-Eigenschaft hinzu.

Benutzerdefinierte Feldansicht - Fügen Sie der Präsentation in dieser mvc-Ansicht Anpassungen hinzu. Stellen Sie sicher, dass das Modell die oben genannte benutzerdefinierte Klasse ist. Speichern Sie diese .cshtml-Datei mit den anderen WFFM-Ansichten.

Javascript - Fügen Sie die folgenden js Validatoren: $ scw.validator.addMethod() $ scw.validator.unobtrusive.adapters.add()

Sitecores Updates - ein Fieldtype Erstellen Sie die benutzerdefinierte Klasse Referenzierung im Feld MVC-Typ. Verweisen Sie diesen neuen benutzerdefinierten Feldtyp als das Feld Typ in dem Formulardesigner. Das Feld Parameter des Formularfelds enthält eine Liste mit Werten, die die Eigenschaften des benutzerdefinierten Felds enthalten.

Oben ist ein Überblick über die Schritte, um dies zu erreichen. Für Abbildungen siehe: https://soyouwannasitecore.wordpress.com/2016/10/27/sitecore-wffm-required-if-outlined/

Verwandte Themen