我想在 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/