Kartiv yii2 datepicker与模型和自定义ID

时间:2016-07-08 11:36:59

标签: yii2

我在Yii2中使用kartik datepicker扩展名http://demos.krajee.com/widget-details/datepicker

问题:

如果我使用自定义ID进行输入,则不会显示show model validations

[MvxFormFactorSpecific(MvxIosFormFactor.Phone)]
public class MyIPhoneView : BaseView<MainViewModel>
{
    // iphone specific view ...
}

[MvxFormFactorSpecific(MvxIosFormFactor.TallPhone)]
public class MyTallIPhoneView : BaseView<MainViewModel>
{
    // tall iphone specific view ...
}

[MvxFormFactorSpecific(MvxIosFormFactor.Pad)]
public class MyIPadView : BaseView<MainViewModel>
{
    // ipad specific view ...
}

虽然以下代码可以使用

   echo kartik\date\DatePicker::widget([
             'model' => $objPatientModel,
             'form'=>$objActiveForm,
             'attribute' => 'date_of_birth',
             'options' => ['placeholder' => 'Enter birth date ...', 'id' => 'patient_dob'], **// with id clientside validations for model does not work**
             'pluginOptions' => [
                 'format' => 'dd-mm-yyyy',
                 'endDate' => date('d-m-Y'),
             ]
         ]);

但我想使用自定义ID。任何建议?

2 个答案:

答案 0 :(得分:0)

您必须覆盖选择器,例如:

$form->field($model, 'comment', ['selectors' => ['input' => '#myCustomId']])
        ->textarea(['id' => 'myCustomId']);?>

请参阅https://github.com/yiisoft/yii2/issues/7627

答案 1 :(得分:0)

 <?=
        $form->field($model, 'sales_date')->widget(DateControl::classname(), [
            'name' => 'sales_date',
            'value' => date('d-m-Y h:i:s'),
            'type' => DateControl::FORMAT_DATETIME,
            'autoWidget' => true,
            'displayFormat' => 'php:d-m-Y h:i:s',
            'saveFormat' => 'php:Y-m-d h:i:s',
            'saveOptions' => [
                'type' => 'hidden',
                'form' => 'sales-form-red',
            ],
        ])
  ?>

通过使用以下选项,您可以在输入中添加额外的表单标签

'saveOptions' => [
                'type' => 'hidden',
                'form' => 'sales-form-red',
                'class' => 'sales_date',
            ]

在我的情况下是

<input type="hidden" id="sales-sales_date" name="Sales[sales_date]" form="sales-form-red">

使用链接检查 Date Control Demo