Yii2条件验证规则基于最小值

时间:2016-12-09 11:14:29

标签: php validation yii yii2

我有2个字段的格式价格和价格,当用户选择pricemark值= other时,用户无法输入小于250的值。我需要yii2中的验证规则,但是不工作这是我的代码

        ['price', 'min' => 250, 'when' => function ($model) {
            return $model->priceMark == 'other';
        }],

2 个答案:

答案 0 :(得分:0)

愚蠢的我,我没有指定验证的属性类型。正确的代码应该是

        ['price', 'integer', 'min' => 250, 'when' => function ($model) {
            return $model->priceMark == 'other';
        }, 'whenClient' => "function (attribute, value) {
            return $('#uploadform-pricemark').val() == 'other';
        }"],

在我错过了价格属性之后看到integer,我也添加了客户端代码,现在也正常工作。

答案 1 :(得分:0)

试试这个:

['price', 'number', 'min' => 250, 'when' => function ($model) {
    return $model->priceMark == 'other';
}, 'whenClient' => 'function (attribute, value) {
    return $("<field>").val() == "other";
}'],

其中<field>priceMark元素标识符,例如其类或ID(如果型号名称为#price_pricemark,则为Price)。