【发布时间】:2017-08-13 03:51:25
【问题描述】:
我有一个表单,它应该在按下提交按钮后提交数据。根据需要标记几个输入字段后,当按下提交按钮后,在必填字段中没有输入时,表单总是显示我 - 到目前为止,一切都很好。
我想知道的是,如果提交成功,则会重定向到另一个页面。如果有一些空的必填字段,表单应该显示给我,而不会将我重定向到另一个页面。
现在我有以下代码:
提交按钮:
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" name="submityes" id="submityes" class="btn btn-danger">Submit</button>
</div>
</div>
我还有以下 js 函数来提交表单并将我重定向到另一个页面:
$('document').ready(function () {
"use strict";
$(function () {
$('#submityes').click(function () {
$.ajax({
type: "POST",
/* url: "process.php", //process to mail
data: $('form.contact').serialize(), */
success: function (msg) {
window.location.replace("/submit_resolved.php");
},
error: function () {
alert("error");
}
});
});
});
});
我现在遇到的问题是,无论所有必填字段是否完整,我都会被重定向到“submit_resolved.php”页面。
我该如何解决这个问题?我只想在所有必填字段都不为空时被重定向。
【问题讨论】:
-
您当前的代码没有提交 form,它在没有首先进行任何验证的情况下发出 Ajax 请求。为什么不直接提交一个标准(非 Ajax)表单,然后在 PHP 中处理重定向?
-
您可以更改您的事件侦听器以侦听表单的
submit,然后在您的HTML 元素上使用required属性...。如果您更改了event.preventDefault();,您将需要添加eventlistener 监听表单提交以防止表单执行默认操作post所以可能用表单标签包装表单.... -
谢谢。如何在没有 ajax 的情况下编写代码?使用 ajax 和不使用 ajax 有什么区别?
标签: javascript php jquery html forms