From c927f9343001b456c1fa25dc541c3f1b005510f8 Mon Sep 17 00:00:00 2001 From: wei <> Date: Sat, 5 Aug 2006 03:42:04 +0000 Subject: Fixed #278 --- demos/quickstart/protected/controls/DocLink.php | 3 +- .../Samples/TClientSideValidator/Home.page | 41 ++++++++++++++++++++++ .../Controls/Samples/TClientSideValidator/Home.php | 23 ++++++++++++ .../protected/pages/Controls/Validation.page | 35 ++++++++++++++++++ 4 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 demos/quickstart/protected/pages/Controls/Samples/TClientSideValidator/Home.page create mode 100644 demos/quickstart/protected/pages/Controls/Samples/TClientSideValidator/Home.php (limited to 'demos/quickstart/protected') diff --git a/demos/quickstart/protected/controls/DocLink.php b/demos/quickstart/protected/controls/DocLink.php index 74398efb..e8ca7dfa 100644 --- a/demos/quickstart/protected/controls/DocLink.php +++ b/demos/quickstart/protected/controls/DocLink.php @@ -22,7 +22,8 @@ class DocLink extends THyperLink { $classFile=array_pop($paths).'.html'; $this->setNavigateUrl(self::BASE_URL . '/' . implode('.',$paths) . '/' . $classFile); - $this->setText('API Manual'); + if($this->getText() === '') + $this->setText('API Manual'); } } } diff --git a/demos/quickstart/protected/pages/Controls/Samples/TClientSideValidator/Home.page b/demos/quickstart/protected/pages/Controls/Samples/TClientSideValidator/Home.page new file mode 100644 index 00000000..e96e7c12 --- /dev/null +++ b/demos/quickstart/protected/pages/Controls/Samples/TClientSideValidator/Home.page @@ -0,0 +1,41 @@ + +

Validator Toggle - Server and Client Side

+ + + +
+ +
+ + + + + + + Event.OnLoad(function() + { + Event.observe("<%= $this->check1->ClientID %>", "click", function(ev) + { + $("<%= $this->panel1->ClientID %>").toggle(); + }); + }); + +
\ No newline at end of file diff --git a/demos/quickstart/protected/pages/Controls/Samples/TClientSideValidator/Home.php b/demos/quickstart/protected/pages/Controls/Samples/TClientSideValidator/Home.php new file mode 100644 index 00000000..c5440996 --- /dev/null +++ b/demos/quickstart/protected/pages/Controls/Samples/TClientSideValidator/Home.php @@ -0,0 +1,23 @@ +Enabled = $this->check1->Checked; + } + + function validate2_onPostValidate($sender, $param) + { + $sender->Enabled = true; + } + + function onPreRender($param) + { + parent::onPreRender($param); + $this->panel1->Style = + $this->check1->Checked ? "display:block" : "display:none"; + } +} + +?> \ No newline at end of file diff --git a/demos/quickstart/protected/pages/Controls/Validation.page b/demos/quickstart/protected/pages/Controls/Validation.page index 12836b8c..2241f346 100644 --- a/demos/quickstart/protected/pages/Controls/Validation.page +++ b/demos/quickstart/protected/pages/Controls/Validation.page @@ -151,4 +151,39 @@ The summary can be displayed as a list, a bulleted list, or a single paragraph b

+

Client and Server Side Conditional Validation

+

+ All validators contains the following events. +

+ The corresponding events for the client side is available as sub-properties + of the ClientSide property of the validator. +

+

The following example pop-up a message saying "hello" when the validator fails on the client-side. + +<com:TRequiredFieldValidator ... > + <prop:ClientSide.OnError> + alert("hello"); + </prop:ClientSide.OnError> +</com:TRequiredFieldValidator> + +The resulting client-side event callback function is of the following form. + +function onErrorHandler(validator, sender) +{ + alert("hello"); +} + +Where validator is the current client-side validator and sender +is the control that invoked the validator. +

+

Conditional Validation Example

+

+The following example show the use of client-side and server side validator events. The example +demonstrates conditional validation. + +

\ No newline at end of file -- cgit v1.2.3