Yii2文本字段ajax调用模糊

时间:2015-04-09 15:10:41

标签: php ajax yii2

在Yii 1中你可以为textField添加一个选项,这样当这个字段模糊时,它会启动一个ajax调用:

echo $form->textField($model, 'field_name', [    
    'ajax' => [
        'type' => 'POST',
        'url' => Yii::app()->createUrl('ajax/process-field'),
        'update' => '#Form_field',
        'data' => array('field' => 'js:this.value'),
        'success' => 'jsFunction'
    ]]);

有没有办法在Yii2中做同样的事情?我一直在四处寻找,但无法找到它。

1 个答案:

答案 0 :(得分:1)

我找到了另一种解决方案: 在模型规则中,您可以使用参数 whenClient

public function rules()
    {
        return [
            //your rules here
            [['field_name'], 'string', 'max' => 6, 'whenClient'=>function(attribute, value){
                $.get('/ajax/process-field', {'field':value}, jsFunction);
            }],

        ];
    }

Yii 2文档中记录了它:Conditional Validation

我不确定这是否是最好的方式,但它有效。