
我创建了一个从文本类型继承的新颜色类型:
<?PHPnamespace Marquis\WebsiteBundle\Form\Type;use Symfony\Component\Form\AbstractType;class colorType extends AbstractType{ public function getParent() { return 'text'; } public function getname() { return 'color'; }}?> 并创建了一个新服务来使用它:
marquis_website.form.type.color: class: Marquis\WebsiteBundle\Form\Type\colorType Tags: - { name: form.type,alias: color } 但是,当显示表单时,输入标记如下所示:
<input type="text" ID="entity_hex" name="entity[hex]" value="#4D89BF">
所以它不是使用新的HTML5颜色输入而是使用文本输入.
有没有办法覆盖类型,所以它会显示type =“color”?
我还检查了fIElds.HTML.twig,这条线应该可以正常工作:
{% set type = type|default('text') %} 如果我将默认值(‘text’)更改为默认值(‘color’),则所有input type =“text”都将更改为type =“color”.
谢谢您的帮助,
解决方法 您还必须为您的字段定义新的主题块{% form_theme form _self %}{% block color_Widget %}{% spaceless %} {% set type = 'color' %} {{ block('form_Widget_simple') }}{% endspaceless %}{% endblock %} More about custom form fields
More about custom form themes
总结以上是内存溢出为你收集整理的Symfony2自定义表单字段类型HTML5颜色全部内容,希望文章能够帮你解决Symfony2自定义表单字段类型HTML5颜色所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)