Php 在Symfony2中动态修改表单而不使用Javascript?

Php 在Symfony2中动态修改表单而不使用Javascript?,php,forms,symfony,Php,Forms,Symfony,我在看报纸 从Symfony2烹饪书中 我正在寻找类似于上面链接的功能 但是,如果我理解正确,建议使用AJAX更新表单 这是正确的吗 这个例子是我想要的功能: 步骤1: Form //Controller locationAction ________________ | | | Country Select | | |Please select...| | | ____ | |Next| _______________ 击中下一个目标后的期望值 提交到相同的loca

我在看报纸 从Symfony2烹饪书中

我正在寻找类似于上面链接的功能

但是,如果我理解正确,建议使用AJAX更新表单

这是正确的吗

这个例子是我想要的功能:

步骤1:

Form //Controller locationAction
 ________________
|
|
| Country Select 
|
| |Please select...|
|
|      ____
|     |Next|
 _______________
击中下一个目标后的期望值

  • 提交到相同的locationAction方法
  • 表单将与以前选择的结果一起显示
  • 跳过验证,直到所有动态字段都存在
  • 出现新的州选择字段,选择取决于用户提交的国家/地区字段
步骤2:

|
v

Form //Controller locationAction
 ________________
|
|
| Country Select 
|
|      |U.S.|
|
|  
|      State
|  |Please select ....| //List is displayed that corresponds to their selected country
|
|      ______
|     |Submit|
 _______________
推送提交后

  • 验证国家/地区和州,然后根据首先验证的表单(包括动态字段)执行操作
在一个表单中单独使用
表单订阅者/表单监听器
而不使用JavaScript,是否可以获得上述结果

还是需要使用JavaScript/创建单独的表单

但是,如果我理解正确,建议使用AJAX进行更新 表格

不,没有。您只需将表单提交给相同的操作即可。在每一步之后,它都是一个新的请求/响应,动态表单生成是在服务器端处理的,而不是通过javascript


也许,这正是您的用例(这是同一指南的另一部分)。

据我所知,没有JavaScript,您无法动态修改页面内容。@a.L当您按下“下一步”时,页面会在
GET/POST
请求后重新加载。然后可以显示“动态”字段。严格来说,如果重新加载页面,这不是动态的。@A.L我们谈论的是不同的上下文。我要澄清的是,我指的是内部框架,而不是请求类型。好吧,我明白了,很抱歉误解了。太棒了,它确实有效。只需确保启用了动态选项的验证。