【问题标题】:JavaScript confirm(..) equivalent in Symfony PHP [closed]Symfony PHP中的JavaScript确认(..)等价物[关闭]
【发布时间】:2017-04-17 20:02:41
【问题描述】:

我正在使用 PHP 框架 Symfony 3,我有一个简单的表单,用户可以在其中创建一个 Sponsor 对象,当他提交该表单时,我想要一个在 $ 之后调用的对话框(如使用 JavaScript 的确认(..)) em->flush() 在控制器中询问用户是否要创建另一个 Sponsor 对象,如果他选择 YES 表单字段将为空,他可以创建另一个,如果他选择 NO 然后他将被重定向到另一个页面

如何在提交表单之前或之后显示一个确认()对话框,以便我可以决定将用户重定向到哪里?

【问题讨论】:

  • 没有等价的,刷新后你可以返回一个视图,用户可以选择创建另一个视图
  • 这正是我想要避免的,不想要额外的视图,因为那是额外的加载时间

标签: javascript php forms symfony dialog


【解决方案1】:

Symfony 是一个 PHP 框架。所以不,你不能用 PHP 做到这一点。

一种解决方案是添加一个隐藏的复选框。当点击提交按钮时,您可以在 JS 中执行 confirm() 并选中(或不选中)复选框。根据此复选框的状态,您将用户重定向到一个页面或另一个页面。

另一种解决方案是添加一个可见的复选框,让用户决定何时填写表单。

另一种解决方案是使用 JavaScript 异步发送表单,这样您就可以询问您的用户是否要创建新的赞助商。

【讨论】:

  • 隐藏复选框解决方案看起来不错,这样的工作是否可行: 然后在我的控制器中我根据复选框重定向用户
  • 是的,这应该可以。
  • 好吧 thnaks 很多
  • 我有一个问题,使用该代码,确认(..)对话框会始终显示还是仅在表单验证时显示?我希望它仅在表单验证时显示
  • 这将始终显示。即使表格无效。但这有什么关系?您将检查此输入,然后发送表单。它不会被验证。因此,您将为用户提供错误。他会更正表格,然后重新发送表格,然后……等等。
猜你喜欢
  • 1970-01-01
  • 2021-04-05
  • 1970-01-01
  • 2016-07-04
  • 2012-09-06
  • 1970-01-01
  • 1970-01-01
  • 2010-12-01
相关资源
最近更新 更多