[英]select 2 widget validation with j query in yii2?
所以我寫了一個用於選擇字段的代碼,我正在使用yii2,這是我的代碼
<?= $form->field($model, 'primaryfield')->widget(Select2::classname(), ['data'
=> $listData,
'options' => ['placeholder'=>'Select', 'multiple' =>
false,'required'=>true], 'pluginOptions' => ['tags' => false, 'tokenSeprators'
=> [',', ' '], 'maximumInputLength' => 20], ],])->label(false); ?>
我想使用到目前為止我嘗試過的驗證規則的jquery validate插件來驗證它
$('form').validate({
errorClass:'help-block help-block-error',
errorPlacement: function(error, element) {
if(element.attr("name") == "TestModel[primaryfield]" )
{
error.insertAfter(".error_message2");
}
else
error.insertAfter(element);
},
rules: {
'TestModel[email]': {
required:true,
email: true
},
'TestModel[name]':
{
required:true,
},
'TestModel[primaryfield]':
{
required:true
}
},
我的電子郵件和姓名得到驗證,但select2字段(主字段未得到驗證)我只想在有人可以給我解決方案的情況下應用驗證規則
使用Yii2,您只需在模型中聲明規則。 然后,
在您的模板中,啟用AcitveForm的“ enableClientValidation”選項,如下所示:
<?php $form = \kartik\form\ActiveForm::begin([
'enableClientValidation' => true,
'options' => [
'id' => 'ajax-contact-form'
]
]); ?>
使用Select2小部件,還不夠。 所以我必須使用javascript如下:
$(document).ready(function () {
$("select").on("select2:close", function (e) {
if (!$(this).val()) {
var formGroup = $(this).parent().parent();
formGroup.addClass('has-error');
$('.help-block:first', formGroup).html('Please choose one partner!')
}
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.