/** * Adds a validation rule for the given field * * If the element is in fact a group, it will be considered as a whole. * To validate grouped elements as separated entities, * use addGroupRule instead of addRule. * * @param string $element Form element name * @param string $message Message to display for invalid data * @param string $type Rule type, use getRegisteredRules() to get types * @param string $format (optional)Required for extra rule data * @param string $validation (optional)Where to perform validation: "server", "client" * @param bool $reset Client-side validation: reset the form element to its original value if there is an error? * @param bool $force Force the rule to be applied, even if the target form element does not exist */ function addRule($element, $message, $type, $format = null, $validation = 'server', $reset = false, $force = false) { parent::addRule($element, $message, $type, $format, $validation, $reset, $force); if ($validation == 'client') { $this->updateAttributes(array('onsubmit' => 'try { var myValidator = validate_' . $this->_formName . '; } catch(e) { return true; } return myValidator(this);')); } }
/** * Adds a validation rule for the given field * * If the element is in fact a group, it will be considered as a whole. * To validate grouped elements as separated entities, * use addGroupRule instead of addRule. * * @param string $element Form element name * @param string $message Message to display for invalid data * @param string $type Rule type, use getRegisteredRules() to get types * @param string $format (optional)Required for extra rule data * @param string $validation (optional)Where to perform validation: "server", "client" * @param bool $reset Client-side validation: reset the form element to its original value if there is an error? * @param bool $force Force the rule to be applied, even if the target form element does not exist */ function addRule($element, $message, $type, $format = null, $validation = 'server', $reset = false, $force = false) { parent::addRule($element, $message, $type, $format, $validation, $reset, $force); if ($validation == 'client') { $this->clientvalidation = true; } }