0
我已经在命令工具doctrine中创建了一个实体,并带有日期字段。现在,通常它会向您显示一个简单的选择框,并且工作正常。现在我想把它作为日历,日期选择器呈现出来。不幸的是,我无法正确理解,即使在stackoverflow上有很多问题和答案。我受够了Jquery的日期选择器尝试过,但它仍然是一个文本框,我会告诉你我的代码:如何获取日期在Symfony2表单构建器中的Datepicker
ReserverenType.php
<?php
namespace Codeit\RestaurantBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolverInterface;
class ReserverenType extends AbstractType
{
/**
* @param FormBuilderInterface $builder
* @param array $options
*/
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('naam')
->add('datum', 'date' ,array(
'widget'=> 'single_text',
'format'=>'yyyy/MM/dd',
))
->add('tijd')
->add('personen')
->add('email')
->add('opmerkingen')
;
}
/**
* @param OptionsResolverInterface $resolver
*/
public function setDefaultOptions(OptionsResolverInterface $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'Codeit\RestaurantBundle\Entity\Reserveren'
));
}
/**
* @return string
*/
public function getName()
{
return 'codeit_restaurantbundle_reserveren';
}
}
base.html.twig
{% block stylesheets %}
{% stylesheets
'%kernel.root_dir%/../vendor/twbs/bootstrap/dist/css/bootstrap.css'
'%kernel.root_dir%/../vendor/twbs/bootstrap/dist/css/bootstrap-theme.css'
'@CodeitRestaurantBundle/Resources/public/css/jquery-ui.min.css'
%}
<link rel="stylesheet" href="{{ asset_url }}">
{% endstylesheets %}
{% endblock %}
{% block javascripts %}
{% javascripts
'%kernel.root_dir%/../vendor/components/jquery/jquery.js'
'%kernel.root_dir%/../vendor/twbs/bootstrap/dist/js/bootstrap.js'
'@CodeitRestaurantBundle/Resources/public/js/jquery-ui.min.js'
%}
<script src="{{ asset_url }}"></script>
{% endjavascripts %}
{% endblock %}
新.html.twig
{% extends '::base.html.twig' %}
{% block body -%}
<h1>Maak een reservering</h1>
{{ form(form) }}
<a href='../../restaurant.php'>
<div class="terug" style="margin-top: 10px;"> ← Terug naar restaurant pagina </div>
</a>
<script type=”text/javascript”>
$('.date').datepicker({
showOn: 'button',
buttonImageOnly: true,
changeMonth: true,
changeYear: true,
dateFormat: 'dd-mm-yy',
yearRange: "-0:+1"
});
</script>
{% endblock %}
输出:
仍然有空白的输入字段。这是否意味着我的jquery不起作用或什么? – Gijsberts
忘了提@benoît – Gijsberts