Symfony1 Symfony:未保存表单的额外字段

Symfony1 Symfony:未保存表单的额外字段,symfony1,symfony-1.4,Symfony1,Symfony 1.4,好的,我有一个表单和另一个嵌入表单。在actions.php中,我有: ... // add extra field - select for dynamic population $tempFrm = new SbCarteOpTempForm(array(), array('type' => 'transfer')); $tempFrm->setWidget('inv_selectate',new sfWidgetFormSelectMany(array('choices' =&

好的,我有一个表单和另一个嵌入表单。在actions.php中,我有:

...
// add extra field - select for dynamic population
$tempFrm = new SbCarteOpTempForm(array(), array('type' => 'transfer'));
$tempFrm->setWidget('inv_selectate',new sfWidgetFormSelectMany(array('choices' => array())));
$tempFrm->setValidator('inv_selectate', new sfValidatorPass());

$tempFrm->setWidget('status',new sfWidgetFormInputHidden(array(),array('value'=>'pending')));
$tempFrm->setValidator('status', new sfValidatorPass());

额外的字段“inv_selectate”和“status”应该包含在显示的表单中,它们确实是。但当我尝试提交表单时,只发送状态变量,而select元素不发送(inv\U selectate)

为什么会这样?我真的看不出问题所在(这两个新添加的字段之间也没有区别)

谢谢。

我找到了:)

它与select元素相关。在模板内部,我使用js向其添加元素(由用户动态填充),但选择不会出现在表单提交中,除非您在其中选择了一些元素

在我的例子中,选定的只有元素,没有选定元素。哦!:)

我找到了:)

它与select元素相关。在模板内部,我使用js向其添加元素(由用户动态填充),但选择不会出现在表单提交中,除非您在其中选择了一些元素


在我的例子中,选定的只有元素,没有选定元素。哦!:)

奇怪。如果我尝试使用sfWidgetFormSelect而不是sfWidgetFormSelectMany,它会起作用。嗯…你能把你的模板贴在这里吗?模板有点像这样(只是简单的回音形式)奇怪。如果我尝试使用sfWidgetFormSelect而不是sfWidgetFormSelectMany,它会起作用。嗯…你能在这里发布你的模板吗?模板是这样的(只是简单的回音表单),如果你需要确保总是有一个值,你可以尝试创建一个自定义小部件,其中包含一个选择和一个隐藏小部件(看看sfWidgetFormDateRange是如何工作的-您可以复制它,它与两个sfWidgetFormDate对象的功能类似)如果您需要确保始终存在一个值,您可以尝试创建一个包含选择和隐藏小部件的自定义小部件(看一看sfWidgetFormDateRange是如何工作的-您可以复制它,它与两个sfWidgetFormDate对象有类似的功能)