2017-01-02 1 views
-1

Comment savoir si la validation a été déclenchée sous forme active yii2? J'utiliseyii2 validation de formulaire ne fonctionne pas

$('#formId').yiiActiveForm('validate', true); 

pour valider le formulaire, mais il revient toujours pas défini.

+2

double possible de [js actif sous forme de validation en yii2] (http://stackoverflow.com/questions/41422316/js-active-form-validation -in-yii2) –

+0

Pourquoi avez-vous passé 'options' comme' TRUE'? –

+0

Les deux questions sont différentes. Lire attentivement. Seul le scénario est identique c'est-à-dire validation de formulaire ... @ YasarArafath –

Répondre

0

Essayez

dans votre MODÈLE

Par exemple,

public function rules() 

    { 
     return [ 

      [['first_name', 'last_name', 'email_address','city','contact_phone', 'Address', 'date_created'], 'required'], 

      ['contact_phone', 'unique'], 

      ]; 

    } 

prenom comme nom d'entrée dans votre fichier de vue

Dans votre VIEW fichiers

<div class="form-group" > 

<?= Html::activeLabel($model, 'first_name', ['class'=>'control-label col-sm-3']); ?> 

<div class="col-sm-6"> 

<?= Html::activeTextInput($model, 'first_name',['class' => ['form-control']]); ?> 

<?= Html::error($model, 'first_name',['style' => 'color:red;']); ?> 

</div> 

</div> 
1

Trigger la validation du formulaire, essayez ceci:

var $form = $("#formId"), 
    data = $form.data("yiiActiveForm"); 
$.each(data.attributes, function() { 
    this.status = 3; 
}); 
$form.yiiActiveForm("validate"); 

J'ai créer une fonction de validation de forme active en javascript, ce sera le retour vrai/faux. Peut-être utile:

function checkForm(form_id){ 
    var $form = $("#"+form_id), data = $form.data("yiiActiveForm"); 
    $.each(data.attributes, function() { 
     this.status = 3; 
    }); 
    $form.yiiActiveForm("validate"); 
    if ($form.find('.has-error').length == 0) { 
     return true; 
    } 
    return false; 
} 

l'appellent:

checkForm("formId"); // it will be return true/false and also validating the form