2014-09-08 3 views
13

Je voudrais ajouter une classe à la forme comme:Comment ajouter une classe à ActiveForm dans le framework Yii 2.0?

<form role="form" action="/login" method="POST" class="userform"> 

Comment dois-je réécrire cette classe pour Yii 2.0 ActiveForm?

La même question est pour cette structure à l'intérieur de la balise form:

<div class="ui-grid-solo"> 
    <div class="ui-grid-a"> 
      <label for="name">Full Name</label> 
      <input type="text" name="login" id="login" value="" data-clear-btn="true" data-mini="true"> 
      <label for="password">Password</label> 
      <input type="password" name="password" id="password" value="" data-clear-btn="true" autocomplete="off" data-mini="true"> 
      <input type="checkbox" name="remind" id="remind" value="1"> 
      <label for="remind">Remember me</label> 
      <br> 
      <input type="submit" value="Login" onclick="this.form.submit();"> 
    </div> 
</div> 
+0

pourquoi n'acceptez-vous pas de réponse? – tinybyte

Répondre

27

Dans Yii2, je ne pense pas que 'htmlOptions' fonctionne. Juste "options" est correct, par exemple. Pourquoi n'acceptez-vous pas de réponse?

<?php 
    $form = ActiveForm::begin(
     [ 
      'action' => '/login', 
      'options' => [ 
       'class' => 'userform' 
      ] 
     ] 
    ); 
    // ... add all your inputs here for example: 
    echo $form->field($model, 'login'); 
    ActiveForm::end(); 
?> 
2

Ma première réponse, mais dans un widget Options ajouter

'HTMLOptions' => array ('class' => 'modifiable)

<?php $form=$this->beginWidget('CActiveForm', array(
    'id'=>'my-form', 
    'htmlOptions'=>array('class'=>'my-class'), 
    'enableAjaxValidation'=>false, 
)); ?> 

Je ne l'ai pas lu la question correctement, il semble, j'ai posté pour Yû 1.x

pour Yii 2.0

'Options' => [ 'class' => 'my-form']

$form = ActiveForm::begin(['id' => 'my-form', 'options'=>['class'=>'my-form']]); 
4

Vous pouvez utiliser htmlOptions:

<?php 
    $form = ActiveForm::begin(
     [ 
      'action' => '/login', 
      'htmlOptions' => [ 
       'class' => 'userform' 
      ] 
     ] 
    ); 
    // ... add all your inputs here for example: 
    echo $form->field($model, 'login'); 
    ActiveForm::end(); 
?> 
7

Pour ajouter la classe dans ActiveForm Yii2 .0. Vous devez utiliser les options

<?php $form = ActiveForm::begin(['action' => '/login','options' => ['class' => 'userform','enctype' => 'multipart/form-data']]); ?> 

Veuillez lire ce document pour plus d'informations.

Questions connexes