2017-01-03 126 views
0

我有一個表格字段「DOB []」與陣列輸入像卡爾蒂剋日期選擇器extention

<?php $form = ActiveForm::begin(); 
for($i=0;$i<= 3;$i++): 
echo $form->field($model, 'dob[]')->widget(DatePicker::classname(), [ 
    'options' => ['placeholder' => 'Date Of Birth'], 
    'type' => DatePicker::TYPE_INPUT, 
    'pluginOptions' => [ 
     'format' => 'mm/dd/yyyy', 
     'autoclose' => true, 
    ] 
]); 
endfor; ?> 

<div class="form-group"> 
<?= Html::button('Submit', ['class' => 'btn btn-success']) ?> 
</div> 
<?php ActiveForm::end(); ?> 

日期選擇器工作僅在第一個「DOB」字段,但具有該字段的其餘部分只有datepicker的按鈕格式,但日曆不工作。

回答

1

這是因爲JavaScript無法確定第一個輸入字段後的正確輸入字段。看看你的源代碼。所有小部件都具有相同的ID和/或名稱。您必須爲每個生成的小部件設置唯一的ID。順便說一下,它總是一個很好的方法來相應地命名錶單數據。

That is documented at the demo page.

下面應該工作:

<?php 
$form = ActiveForm::begin(); 
    for ($i=0; $i < 3; $i++) { 
     echo $form->field($model, 'date_end')->widget(DatePicker::classname(), [ 
      'options' => [ 
       'placeholder' => 'Date Of Birth', 
       'name' => 'DOB' .$i, 
       'id' => 'DOB-ID' . $i, 
      ], 
      'type' => DatePicker::TYPE_INPUT, 
      'pluginOptions' => [ 
       'format' => 'mm/dd/yyyy', 
       'autoclose' => true, 
      ], 
     ]); 
    } 
?> 

<div class="form-group"> 
<?= Html::button('Submit', ['class' => 'btn btn-success']) ?> 
</div> 
<?php ActiveForm::end(); ?> 
相關問題