javascript - Yii 需要根据条件进行验证

标签 javascript php jquery yii

我想在 Yii 模型中根据条件验证字段。

我的 View 中有两个字段

类型(单选按钮):标准和特殊

term (textfield) : 任何文本数据

目前我正在根据类型条件显示术语文本框,即如果类型是特殊的,则显示 o/w 隐藏。

我想使用 Yii 必需规则验证它,即如果用户选择特殊的单选按钮,那么他必须填写术语文本字段数据 o/w 它不是强制性的。

如果我对特殊使用 required 那么它在 type = standard 的情况下进行验证是错误的。我已经进行了自定义验证,但它不起作用。

public function rules() {
     array('type', 'required'),
     array('term', 'checkTerm', 'trigger' => 'type'),
}

public function checkTerm($attribute, $params) {        
     if ($this->$params['trigger'] == "Special") {
        if (empty($attribute))
           $this->addError($attribute, 'Special term cannot be blank.');
     }
}

我哪里错了?需要帮忙。谢谢

最佳答案

试试这个:

public function rules() {
     array('type', 'required'),
     array('term', 'checkTerm'),
}

public function checkTerm() {        
     if ($this->type == "Special") {
        if (empty($this->term))
           $this->addError("term", 'Special term cannot be blank.');
     }
}

关于javascript - Yii 需要根据条件进行验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22190153/

相关文章:

jQuery:如何选择我 parent 的所有 P child ?

Javascript:了解应用于小费计算器的 map 和 reduce

javascript - 如何从 Razor 部分引用 javascript 变量?

phpunit,laravel : Cannot use "parent" when current class scope has no parent

jquery - 通过自动页面滚动,单击时将 div 浮出窗口顶部

java - 将用户提供的 javascript 代码从网页表单存储到数据库时的安全性

javascript - 获取元素多个 ID 或 CLASS

javascript - hasClass 在我的 js 代码中不起作用?

php - 从 HTML 中删除 img 和 p 标签

php - 阻止后退按钮暴露安全页面?