2014-05-06 67 views
4

我对Symfony比较陌生,试图寻找解决方案来解决这个问题,但无法找到任何东西。我试图让用户(在前端)添加表单字段到表单。Symfony在前端添加表单字段

我正在做一个应用程序,用户可以发布食谱,用户应该能够添加成分表单字段的形式,我知道如何做到这一点在纯jQuery的html &,但我不知道如何我可以在Symfony中管理它。

这是我当前如何构建形式:

class UserType extends AbstractType 
{ 
    public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
     $builder->add('username', 'text'); 
     $builder->add('email', 'email'); 
     $builder->add('password', 'repeated', array(
      'first_name' => 'password', 
      'second_name' => 'confirm', 
      'type'  => 'password', 
     )); 
     $builder->add('address', new AddressType()); 
     $builder->add('Registreer', 'submit'); 
    } 

    public function setDefaultOptions(OptionsResolverInterface $resolver) 
    { 
     $resolver->setDefaults(array(
      'data_class' => 'Acme\DemoBundle\Entity\User' 
     )); 
    } 

    public function getName() 
    { 
     return 'user'; 
    } 
} 

这是我希望看到的结果,我怎么能实现的Symfony这样的事情?

HTML

<a href="#" id="add">Add ingredient</a> 
<form> 
    <p><input type="text" name="ingredient[]" /></p> 
</form> 

jQuery的

$(function(){ 

    console.log('ready') 

    $('#add').click(function(){ 
     $('form').append('<p><input type="text" name="ingredient[]" /><a href="#" class="remove">Remove</a></p>'); 
    }) 

    $('form').on('click', '.remove', function(){ 
     $(this).parent().remove(); 
    }) 

}) 

的jsfiddle

http://jsfiddle.net/MBhcF/

+1

阅读本文件 - http://symfony.com/doc/current/cookbook/form/form_collections.html – dmnptr

回答

2

Ofcourse。他们被称为集合:

http://symfony.com/doc/current/cookbook/form/form_collections.html

你会发现几乎所有你在我的职位之一所需要的一切:

Form with a collection same entity type

如果您有任何疑问/需要帮助,我知道集合类型非常好,很乐意帮助你。

+0

你有链接到任何使用此方法的示例窗体? – user2019515

+0

是的,你需要什么文件?一个PHP表单类,树枝模板,...? – tomazahlin

+0

不寻找一个文件,我只是不知道如果你有一个工作演示在那里? – user2019515

相关问题