加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

zend-framework – 使用Javascript的Zend表单元素 – 装饰器,视

发布时间:2020-12-13 17:39:19 所属栏目:PHP教程 来源:网络整理
导读:我想在Zend_Form_Element_Text中添加一些 javacsript. 起初我认为装饰器是最好的方法,但由于它只是一个脚本(标记没有改变),那么一个视图助手可能更好吗?还是一个视图脚本? 似乎它们都是出于同一目的(关于表单元素). 我想添加的javascript不是事件(例如更改
我想在Zend_Form_Element_Text中添加一些 javacsript.

起初我认为装饰器是最好的方法,但由于它只是一个脚本(标记没有改变),那么一个视图助手可能更好吗?还是一个视图脚本?

似乎它们都是出于同一目的(关于表单元素).

我想添加的javascript不是事件(例如更改,点击等).我可以使用headScript()轻松添加它,但我希望它可以重复使用,这就是我想到装饰器/视图助手的原因.我不清楚它们之间的区别.

在这种情况下,最佳做法是什么?好处?

更新:似乎最好的做法是使用视图脚本中的视图助手,因此装饰器会更合适吗?

谢谢.

解决方法

你可以通过扩展Zend_From_Decorator_Abstract来创建自己的装饰器,并在它的render()方法中生成你的片段:

class My_Decorator_FieldInitializer extends Zend_Form_Decorator_Abstract {
    public function render($content){

        $separator = $this->getSeparator();
        $element = $this->getElement();

        $output = '<script>'.
             //you write your js snippet here,using 
             //the data you have in $element if you need 
             .'</script>';

        return $content . $separator . $output;
    }
}

如果您需要更多详细信息,请在评论中提出,我将编辑此答案.我没有测试这段代码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读