Zend Form MutliCheckbox Validate Количество проверенных пунктов - PullRequest
1 голос
/ 18 сентября 2011

У меня есть Zend Form с элементом MutliCheckbox.

Я хотел бы проверить количество проверенных элементов, т.е. убедиться, что проверено ровно 3 элемента.

Могу ли я сделать это с текущими валидаторами или я должен написать свой собственный?

Спасибо.

1 Ответ

2 голосов
/ 19 сентября 2011

Вам придется написать свой, но это довольно просто. Существует второй необязательный аргумент метода isValid (), который дает вам доступ ко всем значениям формы и позволяет выполнять этот способ проверки по нескольким входам.

class MyValidator extends Zend_Validate_Abstract {
    public function isValid($value, $formData = null){
        //you can access to all the form values in the $formData, and check/count
        //the values of your multicheckbox
        //this is the super-quick way, but you could also add error messages
        return $isValid;
    }
}

и затем добавьте его к вашему элементу

$myElement->addValidator( new MyValidator());
...