summaryrefslogtreecommitdiff
path: root/framework/Web/UI/WebControls/TBaseValidator.php
diff options
context:
space:
mode:
Diffstat (limited to 'framework/Web/UI/WebControls/TBaseValidator.php')
-rw-r--r--framework/Web/UI/WebControls/TBaseValidator.php17
1 files changed, 11 insertions, 6 deletions
diff --git a/framework/Web/UI/WebControls/TBaseValidator.php b/framework/Web/UI/WebControls/TBaseValidator.php
index 3c76db30..3fe9ee03 100644
--- a/framework/Web/UI/WebControls/TBaseValidator.php
+++ b/framework/Web/UI/WebControls/TBaseValidator.php
@@ -264,16 +264,21 @@ abstract class TBaseValidator extends TLabel implements IValidator
{
if($this->getEnabled(true))
{
- $class = get_class($this);
- $scriptKey = "prado:".$this->getClientID();
- $scripts = $this->getPage()->getClientScript();
- $options = TJavaScript::encode($this->getClientScriptOptions());
- $js = "new Prado.WebUI.{$class}({$options});";
- $scripts->registerEndScript($scriptKey, $js);
+ $key = 'prado:'.$this->getClientID();
+ $options = TJavaScript::encode($this->getClientScriptOptions());
+ $script = 'new '.$this->getClientClassName().'('.$options.');';
+ $this->getPage()->getClientScript()->registerEndScript($key, $script);
}
}
/**
+ * Gets the name of the javascript class responsible for performing validation for this control.
+ * This method overrides the parent implementation.
+ * @return string the javascript class name
+ */
+ abstract protected function getClientClassName();
+
+ /**
* This method overrides the parent implementation to forbid setting ForControl.
* @param string the associated control ID
* @throws TNotSupportedException whenever this method is called