symfony形式是,
'nation' =>new sfWidgetFormChoice(array('choices' => NationPeer::getAllNation())),
'township' =>new sfWidgetFormChoice(array('choices' => TownshipPeer::getAllTownship())),
在选择国家(如印度)时,它应该居住在乡镇(与印度的乡镇)。我不想使用Javascripts!
答案 0 :(得分:1)
不幸的是,除非使用JavaScript,否则网页无法对客户端操作做出反应。
答案 1 :(得分:0)
如果我理解正确,你想根据第一个sfWidgetFormChoice的选择改变第二个sfWidgetFormChoice。在加载页面时,您可以预先渲染第二个表单的当前选定值,但是当您更改第一个表单的值时,您也要更改第二个表单的值,对吗?
对不起,不管怎么说,你必须依赖Javascript才能做到这一点。使用Symfony,您可以使用AJAX帮助程序来解决此问题,而不是通过自己写入许多Javascript来解决这个问题。您可以使用'observe_field'功能将第二个Form更改为新值。诀窍是每次都使用不同的值重新渲染第二个Widget。
有关详细信息,请参阅此页面:http://www.symfony-project.org/book/1_2/11-Ajax-Integration#chapter_11_sub_ajax_driven_forms