From 1ed5d8c3f241116df31b92031ae18a2e6b5b3d4c Mon Sep 17 00:00:00 2001 From: xue <> Date: Tue, 13 Dec 2005 15:14:38 +0000 Subject: Moved code for registering postback js from onPreRender to addAttributesToRender. It's too early to register js in onPreRender. --- framework/Web/UI/WebControls/TLinkButton.php | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) (limited to 'framework/Web/UI/WebControls/TLinkButton.php') diff --git a/framework/Web/UI/WebControls/TLinkButton.php b/framework/Web/UI/WebControls/TLinkButton.php index 121e6213..d3518ee4 100644 --- a/framework/Web/UI/WebControls/TLinkButton.php +++ b/framework/Web/UI/WebControls/TLinkButton.php @@ -81,35 +81,22 @@ class TLinkButton extends TWebControl implements IPostBackEventHandler // We call parent implementation here because some attributes // may be overwritten in the following parent::addAttributesToRender($writer); - + if($this->getEnabled(true)) { $url = $this->getPostBackUrl(); //create unique no-op url references $nop = "javascript:;//{$this->ClientID}"; $writer->addAttribute('href', $url ? $url : $nop); - } - else if($this->getEnabled()) // in this case, parent will not render 'disabled' - $writer->addAttribute('disabled','disabled'); - } - /** - * Registers the postback javascript code. - * If you override this method, be sure to call the parent implementation - * so that the event handlers can be invoked. - * @param TEventParameter event parameter to be passed to the event handlers - */ - protected function onPreRender($param) - { - if($this->getEnabled(true)) - { $scripts = $this->getPage()->getClientScript(); $options = $this->getPostBackOptions(); $postback = $scripts->getPostBackEventReference($this, '', $options, false); $code = "{$postback}; Event.stop(e);"; $scripts->registerClientEvent($this, "click", $code); } - parent::onPreRender($param); + else if($this->getEnabled()) // in this case, parent will not render 'disabled' + $writer->addAttribute('disabled','disabled'); } /** -- cgit v1.2.3