Jquery 仅允许在填写完所有字段后提交表单
我正在尝试将一些数据从AJAX表单发送到Node.js服务器Jquery 仅允许在填写完所有字段后提交表单,jquery,ajax,forms,node.js,Jquery,Ajax,Forms,Node.js,我正在尝试将一些数据从AJAX表单发送到Node.js服务器 $(function () { $('#submit').click(function (e) { e.preventDefault() // prevents the form from being submitted var data = {}; data.id = $("#id").val(); data.title = $("#title").val(); data.content
$(function () {
$('#submit').click(function (e) {
e.preventDefault() // prevents the form from being submitted
var data = {};
data.id = $("#id").val();
data.title = $("#title").val();
data.content = $("#content").val();
data.author = $("#author").val();
data.email = $("#email").val();
$.ajax({
type: 'POST',
data: JSON.stringify(data),
contentType: 'application/json',
url: '/server',
success: function (data) {
console.log('success');
console.log(JSON.stringify(data));
}
});
});
});
我的问题是,我只希望在填写完所有字段后提交表单,但即使我将required
放在input
标签上,我仍然会在控制台上看到消息,表明该过程成功
我该怎么阻止这一切?我只希望表单与所有字段的值一起提交。required属性适用于标准表单提交,您可以使用JavaScript绕过它 假设您现有的代码分别获取每个字段,最简单的更改可能是在您创建的
data
对象中循环使用属性:
for (k in data) {
if ($.trim(data[k]) === "") {
alert("All fields must be filled.");
return false;
}
}
请注意,我使用了,因此用户不能通过输入空格字符来避免您的验证