Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何在Symfony2表单生成器中获取日期选择器_Jquery_Symfony_Date_Doctrine Orm_Datepicker - Fatal编程技术网

Jquery 如何在Symfony2表单生成器中获取日期选择器

Jquery 如何在Symfony2表单生成器中获取日期选择器,jquery,symfony,date,doctrine-orm,datepicker,Jquery,Symfony,Date,Doctrine Orm,Datepicker,我在命令工具doctrine中创建了一个实体,带有一个日期字段。现在,它通常只显示一个简单的选择框,效果很好。现在我想把它渲染成日历,日期选择器。不幸的是,即使在stackoverflow上有很多问题和答案,我也无法正确回答。我已经用Jquery datepicker尝试过了,但它仍然是一个文本框,我将向您展示我的代码: ReserverenType.php <?php namespace Codeit\RestaurantBundle\Form; use Symfony\Comp

我在命令工具doctrine中创建了一个实体,带有一个日期字段。现在,它通常只显示一个简单的选择框,效果很好。现在我想把它渲染成日历,日期选择器。不幸的是,即使在stackoverflow上有很多问题和答案,我也无法正确回答。我已经用Jquery 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';
}
}

对于上一个示例中使用的javascript,您需要使用它,而不是以前的数据字段

$builder->add('datum','date',数组(
'widget'=>'single_text',
'格式'=>'yyyy/MM/dd',
'attr'=>['class'=>'date'],
));

仍然有一个空白的输入字段。这是不是意味着我的Jquery不起作用或什么的?忘记提到@benoît了
     {% 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 %}
{% extends '::base.html.twig' %}

 {% block body -%}
  <h1>Maak een reservering</h1>

     {{ form(form) }}


    <a href='../../restaurant.php'>
     <div class="terug" style="margin-top: 10px;">  &larr; 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 %}