我在同一个HTML文件中有两种形式。
<form id="#login" class="toggling">
</form>
<form id="#register" class="toggling">
</form>
我用
$('.toggling').toggle();
效果很好,但问题是当用户提交表单后,即使用户在注册表单(#register)上后仍提交该表单,该表单将返回(#login)并显示与注册过程相关的错误消息。
我在后端使用php,因此我将使用error_report()函数调用发送错误报告,但是我只有一个 Controller (PHP)和一个 View (HTML)。
现在的问题是,我提交表单后,有什么方法可以检测并停留在#register上,而我提交登录时却没有问题,因为在切换为#login之前的主要表单是没有问题的,所以我只需要留在#register中即可表单是#register,并在那里显示错误。
最佳答案
您可以使用隐藏的输入字段来标识向您发送请求的表单。例如
<form id="#login" class="toggling">
<input type="hidden" name="form_type" value="login" />
</form>
<form id="#register" class="toggling">
<input type="hidden" name="form_type" value="register" />
</form>
在PHP方面,您知道类型,然后将此信息发送回 View 。因此,
$formType
变量将用于标识需要显示错误消息的表单。which works fine but the problem is when user submit the form even while user is on registration form (#register) after submit it will be back to (#login) with error messages related to registration process .
为了回答这个问题,我们还需要知道您如何进行表单提交以及如何在PHP服务器端处理它。
让我们知道这是否对您有帮助。如果您仍然感到困惑,请通过向我们展示如何提交表单以及如何使用PHP处理表单来更新您的问题。
关于jquery - jQuery表单提交后如何保持粘性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39817550/