我对 symfony2 表单有一个严重的问题,我创建了一个很长的表单,所以我用部分(字段)构建它,所以有时我会在同一个表单中汇总这部分(字段)并隐藏另一个使用display:none
和 javascript 代码:
$('#{{form.price.vars.id}}').live('change', function(){
if ( $(this).is(':checked') ) {
$('#action_{{form.price.vars.id}}').show();
} else {
$('#action_{{form.price.vars.id}}').hide();
}
});
....
<ul id="action_{{form.price.vars.id}}" style="display:none">
<li>{{ form_row(form.price_value) }}</li>
<li>{{ form_row(form.price_subscription) }}{{form_row(form.price_subscription_unit)}}</li>
<li>{{ form_row(form.price_activation) }}{{form_row(form.price_activation_unit)}}</li>
</ul>
...
所以当我隐藏这个字段并单击提交时,表单仍然给我这个隐藏字段是空的,我必须输入一个值,这意味着该部分隐藏在客户端(html代码)但在后端他仍然没有隐藏?
提交后,当我显示隐藏字段以查看发生了什么时,我有一个通知“请在 emply 字段中输入一个值”?