PHP-Zend Forms电子邮件元素更改为文本
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP-Zend Forms电子邮件元素更改为文本,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1565字,纯文字阅读大概需要3分钟。
内容图文
![PHP-Zend Forms电子邮件元素更改为文本](/upload/InfoBanner/zyjiaocheng/656/5e3a6d23cfce4eeebccb9a1c9b3028ab.jpg)
我正在尝试在Zend Forms中创建类型为email的输入,但无法完成所需的结果.
我创建了一个自定义类:
namespace AAA\Forms\Elements;
class Email extends \Zend_Form_Element_Text
{
function __construct($name, $label, $required)
{
parent::__construct($name);
$this->setAttrib('type', 'email');
$this->setLabel($label)->setRequired($required);
}
}
然后我像这样使用它:
class Application_Form_Register extends Zend_Form
{
public function init()
{
// …
$email = new AAA\Forms\Elements\Email('email', 'E-mail:', true);
$this->addElement($email);
// …
}
}
我得到的是:
<input type="text" name="email" id="email" value="" type="email">
注意两个类型参数.
我已经在Bootstrap.php中设置了HTML5 doctype($documentType = new Zend_View_Helper_Doctype(); $documentType-> doctype(‘HTML5’);),并且我也尝试了以下操作:
function __construct($name, $label, $required)
{
$options = array();
$options['type'] = 'email';
parent::__construct($name, $options);
// …
}
我已经读过Zend HTML5 Form element types,但所有答案都无效.我也尝试了故障库,但结果是一样的.
有谁知道如何强制Zend Framework使用HTML5表单控件?
解决方法:
您还需要实现自己的视图助手来呈现电子邮件表单元素.
Zend_Form_Element_Text使用formText视图帮助器(Zend / View / Helper / FormText.php)呈现HTML输入,并且在呈现元素时很难编码以输出< input type =“ text”.
解决此问题的两种可能方法是:
>从元素中删除ViewHelper装饰器,然后使用ViewScript帮助器来呈现元素.
>使您自己的视图助手formEmail与formText几乎相同,只不过它输出type =“ email”;并将Element类中的公共$helper属性设置为formEmail.您将必须使用Zend_View :: addHelperPath()注册formEmail帮助器的路径,以便ViewHelper装饰器可以找到它.
内容总结
以上是互联网集市为您收集整理的PHP-Zend Forms电子邮件元素更改为文本全部内容,希望文章能够帮你解决PHP-Zend Forms电子邮件元素更改为文本所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。