2017-04-20 64 views
2

我有一份表单,希望显示html链接。为了避免用户在点击链接时丢失了表单输入,我想在用户离开表单之前通知用户。Extbase:检查表单是否已在控制器操作中提交

为了实现这个目标,我想

public function registerAction(Registration $registration = null) { 
    $formHasBeenSubmitted = !is_null($registration); 
    $this->view->assign('formHasBeenSubmitted', $formHasBeenSubmitted); 
} 

但它始终是假的。

找出特定操作表单是否已提交的正确方法是什么?

更新后 undkos answer

  • 我想显示的情况下,该形式已经提交,但验证错误也已一旦用户开始输入数据显示,当然了该消息。
  • 链接后面有一个窗体,它编辑主窗体上显示的数据(邮政地址),并在编辑后更新。
+0

这意味着如果验证失败,你有'createAction'将用户循环回'registerAction'?在这种情况下,你的表单是否可以正常工作(例如,显示已填写的值和验证错误消息? – undko

+0

)如果验证错误返回到'registerAction'是extbase的默认行为并且非常合理,因为用户必须调整数据在表格中 是的,表格在这种情况下除外 –

+0

这很奇怪你在验证失败时调试了'$ registration'的值吗 – undko

回答

0

作为用户,我不在乎表单是否已经提交或“只”填写 - 因此我建议创建一个模式,只要有表单中的数据。 提高可用性的另一种可能性是创建与target属性的链接。模态和目标都强加自己的问题,所以它总是一种折衷。

+0

感谢您的信息,这实际上是一种不同的方法,但不是我的问题的答案。 –

+0

我明白了。评论本来是足够的:-) – undko