Javascript 使用Symfony向输入发送值
我试图在Symfony内部使用javascript,然后我遇到了一个问题。问题位于我的文件twig.html。一开始我有这样的代码:Javascript 使用Symfony向输入发送值,javascript,html,symfony,Javascript,Html,Symfony,我试图在Symfony内部使用javascript,然后我遇到了一个问题。问题位于我的文件twig.html。一开始我有这样的代码: {{ form_widget(form.name, {'attr': {'class': 'form-control'} }) }} 然后我将其更改为此,以便使用动态验证(这与在浏览器中生成的代码相同,我只是添加了onkeyup操作) 然后我很高兴,因为我的验证规则有效,但我发现当我想更新表单时。字段name是空的(但在服务器中是好的)。所以我想得到这个
{{ form_widget(form.name, {'attr': {'class': 'form-control'} }) }}
然后我将其更改为此,以便使用动态验证(这与在浏览器中生成的代码相同,我只是添加了onkeyup操作)
然后我很高兴,因为我的验证规则有效,但我发现当我想更新表单时。字段name是空的(但在服务器中是好的)。所以我想得到这个字段。在我的函数updateAction中,我在处理表单之前转储变量person,然后name包含good元素。所以问题是form_widget和我刚才做的好事之间有区别。我想做这样的事情来获取我的字段名:
<input type="text" id="person_name"
onkeyup="myFunction()" name="person[name]" required="required"
class="form-control" value="if(form.name is not empty) form.name"/>
谢谢。是否将实体或文档传递给createForm函数? 类似的方法应该会奏效: 控制器
$em = $this->getDoctrine()->getManager();
$your_entity = $em->getRepository(**your_entity_path**)->findOneBy([**parameters**]);
$edit = 1;
if(!isset($your_entity)) {
$your_entity = new Your_entity();
$edit = 0;
}
$form = $this->createForm(**your_entity_type_path**, $your_entity);
$editForm->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
if(!$edit)
$em->persist($your_entity);
$em->flush();
//other code
}
我希望这不会太混乱尝试使用
{form_小部件(form.name,{'attr':{'class':'form control','onkeyup':'myFunction()'}}}}}
非常感谢
$em = $this->getDoctrine()->getManager();
$your_entity = $em->getRepository(**your_entity_path**)->findOneBy([**parameters**]);
$edit = 1;
if(!isset($your_entity)) {
$your_entity = new Your_entity();
$edit = 0;
}
$form = $this->createForm(**your_entity_type_path**, $your_entity);
$editForm->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
if(!$edit)
$em->persist($your_entity);
$em->flush();
//other code
}