【发布时间】:2017-09-07 01:11:58
【问题描述】:
我在控制台“Uncaught TypeError: form.submit is not a function”中有这个错误
输入按钮:<input id="submit" class="button_text" type="submit" name="submit" value="Submit"/>
我发现很多解决方案都说不应该提交名称。我曾尝试更改名称,但即使有错误,表单验证也无法在表单提交和提交表单上工作。可能是什么问题?
jQuery:
$("#submit").click(function() {
form.target="_self";
form.action="submit.php";
form.submit();
});
$('#form').validate({
submitHandler: function(form) {
$.ajax({
url: form.action,
type: form.method,
data: form.serialize(),
success: function(response) {
if (response == false)
{alert('could not submit!')}
}
});
}
});
更新: 如果表单经过验证并成功提交,我想禁用提交按钮,但如果我这样添加它会禁用提交按钮而不提交表单。
$('#submit').on('click', function() {
$('#form').attr('action', 'submit.php');
$('#form').submit();
});
$("#form").submit(function(e){
if ($(this).valid()) {
$("#submit").attr("disabled", true);
$("#preview").attr("disabled", true);
return true;
}else{
e.preventDefault();
}
});
【问题讨论】:
-
您尚未在提交点击中为
form声明任何内容,也许您需要document.form? -
@Se0ng11 我不明白吗?
-
form.target,应该是document.form.target?这将转到点击事件中的所有表单 -
更改提交按钮的名称不应该对验证产生任何影响。如果是,您需要找出原因并修复它。也许您的验证代码正在寻找该名称,您需要使其使用新名称。