J'utilise parsleyjs pour valider mon formulaire et j'aimerais savoir s'il existe un moyen d'empêcher l'appel de braises lorsque le formulaire est invalide.Empêche le déclenchement de l'action lorsque le formulaire est invalide
Répondre
Validez le formulaire dans votre action, affichez le message d'erreur et appelez return;
, si le formulaire est invalide.
En outre: avoir le bouton 'submit' désactivé par défaut, et supprimer l'attribut disabled quand il n'y a pas d'erreurs. 'Ember.Computed' peut aider ici pour déterminer ceci et désactiver/activer le bouton. – elithrar
@elithrar bonne idée –
Oui j'ai essayé de valider la forme de l'action mais je n'étais pas en mesure de trouver un moyen de passer l'objet de forme à l'action du contrôleur
<script>
var parlseyForm;
$(document).ready(function() {
parsleyForm = $("#editLeagueForm").parsley();
});
</script>
<div class="mbs-btn-bar">
<button class="btn btn-default" role="button" {{action "cancel"}}>{{t 'action.cancel'}}</button>
<!--
<button type="button" class="btn btn-primary" role="button" onclick="validateForm(this)">{{t 'action.update'}}</button>
-->
<button type="button" id="updateLeague" class="btn btn-primary" role="button" {{action "updateLeague" parsleyForm}}>{{t 'action.update'}}</button>
</div>
actions: {
/**
* This action is responsible to update the league.
*/
updateLeague: function (form) {
alert(form); //undefined
this.get('model').save().then(() => {
if (this.isNewFile()) {
this.uploadAvatar();
} else {
this.notifyRoute('league', 'info.league.updated');
}
}).catch((error) => {
this.handleError(error, 'error.system_error');
});
},
Oui, je l'ai essayé de valider la forme de l'action mais je wasnt capable de trouver un moyen de passer l'objet formulaire à l'action du contrôleur – jpoiri