Javascript Ajax忽略html验证
这两个字段都有必需的属性,但即使这些字段中的值为空,ajax也会忽略#qty字段的最小值Javascript Ajax忽略html验证,javascript,jquery,html,ajax,required,Javascript,Jquery,Html,Ajax,Required,这两个字段都有必需的属性,但即使这些字段中的值为空,ajax也会忽略#qty字段的最小值 为什么会这样 在发出ajax请求之前,请使用$('#formid').valid()方法阅读更多关于e的信息。preventDefault告诉事件不要执行提交表单的默认操作 然后,您将创建必填字段。那很好,但它们只会在提交时被检查。表单实际上在任何时候都没有被提交,您已经告诉它要阻止该操作 您需要添加一个$(“#表单”).submit();或者将required直接添加到html标记中 编辑:问题中添加了更
为什么会这样 在发出ajax请求之前,请使用
$('#formid').valid()
方法阅读更多关于e的信息。preventDefault告诉事件不要执行提交表单的默认操作
然后,您将创建必填字段。那很好,但它们只会在提交时被检查。表单实际上在任何时候都没有被提交,您已经告诉它要阻止该操作
您需要添加一个$(“#表单”).submit();或者将required直接添加到html标记中
编辑:问题中添加了更多代码。这可能不再适用。这还不是您的全部代码-显示足够多,以便我们了解您试图做的事情。此代码不会检查有效性,但是将
required
attr添加到这些元素中。@batmann您所做的事情完全奇怪,为什么您在单击时绑定验证而不是在文档中绑定验证。准备好了吗在页面加载时绑定所有验证规则更好,以了解更多信息我提供了一个链接,您可以在其中找到demo@Curiousdev因为我有第二个按钮删除其中我需要删除验证哪里说用户正在使用jQuery验证插件?Ohhh这是一个很好的插件,但他没有说他没有使用,甚至不用担心你可能是对的,但我也提供了一个链接,以防他想使用他所做的事情很奇怪,前面的链接提供了一个完整的演示示例
$('#addProduct').click(function (e) {
$('#qty').attr('required', 'required');
$('#product_id').attr('required', 'required');
e.preventDefault();
var product_id = $('#product_id').val();
var data = $("#editOrderContent").serializeArray();
data.push(addProduct);
$.ajax({
type: 'POST',
dataType: 'JSON',
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
url: $('#editOrderContent').attr('action'),
data: data,
success: function (html) {
if (html.error) {
$('.wrap_result')
.text(html.error)
.fadeIn(500).delay(3000).fadeOut(500);
}
else if (html.success) {
$('#summary').before(html.tdProduct);
$('#summary_qty').text(html.summaries['qty']);
$('#summary_price').text(html.summaries['price'] + ' $.');
$('#summary_sum').text(html.summaries['sum'] + ' $.');
$('#product_id').val('');
$('#qty').val(1);
}
}
});
});