如何在这种形式下使用submit()方法

时间:2014-04-29 21:26:10

标签: javascript jquery html forms validation

我有一个用于注册的小表格。为了提交表单,我用javascript创建了一个验证函数。它看起来像这样..

var name = document.getElementById('name').value;
    var company = document.getElementById('company').value;
    var email = document.getElementById('email').value;
    var phone = document.getElementById('phone').value;
    var partnerID = document.getElementById('partner').value;
    var stdLicence = document.getElementById('stdlicense').value;

    var valid = validation(name, company, email, phone, partnerID, stdLicence);
    if (valid.isValid == true) {
        document.getElementById('submit').type = 'submit';
    }
    else
    {
        document.getElementById('errText').removeAttribute('hidden');
        document.getElementById('errText').value = valid.message;
    }
    $("body").scrollTop(0);
}

当所有字段都有效且用户按下"输入"时,它必须提交表单并转到后端。正如您在上面的代码中所看到的,当表单有效时,我将提交按钮类型从按钮更改为"提交"。这段代码用于按下" Enter"按钮。

$("input").keypress(function(event) {
    if (event.which == 13) {
        event.preventDefault();
        validateForm();
        $("#sbmtForm").submit();
    }
});

当表单无效时,输入按钮正在作出反应。但是当表格有效时,它不提交。任何人都可以帮助我,并说出这段代码有什么问题。 非常感谢。

2 个答案:

答案 0 :(得分:1)

试试这个。

$("#sbmtForm")[0].submit();

答案 1 :(得分:1)

您需要触发表单提交 -

$("input").keypress(function(event) {
    if (event.which == 13) {
        event.preventDefault();
        validateForm();
        $("#sbmtForm").trigger('submit');
    }
});