在单击输入并点击提交按钮时提交表单数据

Submit form data both on clicking enter and hitting the submit button

本文关键字:提交 按钮 表单 数据 单击 输入      更新时间:2023-09-26

这是我有的表格:

<form class="form-horizontal" id="login-form">
<input name="email" id="email" type="email" size="30" class="span4" placeholder="Email" style="margin-top:20px; margin-left:20px; width: 270px;"/>
<br>
<input name="passwd" id="passwd" type="password" class="span4" placeholder="Password" style="margin-top:10px; margin-left:20px; width: 270px;"/>
<br><br>
<input type="button" id="login" name="login" value="Go" class="btn btn-custom" style="width:30%; margin-left:30px; margin-top:20px"/>
 <br>
 <br>
</form>  

下面是我使用 JavaScript 在单击按钮时提交数据的 ajax 调用:

$('#login').click(function(){
    $.ajax({
        url:"script.php",
        type:'POST',
        dataType:"json",
        data: $("#login-form").serialize()
    }).done(function(data){
       //do domething
    });
});

如何通过按回车键并单击提交按钮来提交数据?

我已经更新了代码。创建一个函数并在文本框按键事件和识别提交按钮上调用它,然后调用按钮的函数和单击事件。

function submitLogin() {
$.ajax({
    url:"script.php",
    type:'POST',
    dataType:"json",
    data: $("#login-form").serialize()
}).done(function(data){
   //do domething
});
}
$('#email').keypress(function(e) {
if (e.which == '13') {
         submitLogin();
   }
});
$('#passwd').keypress(function(e) {
if (e.which == '13') {
         submitLogin();
   }
});
$('#login').click(function(){
    submitLogin();
});

如何将输入类型更改为"提交"并将点击事件输入到表单提交中?

<input type="submit" id="login" name="login" value="Go" class="btn btn-custom" style="width:30%; margin-left:30px; margin-top:20px"/>

杰奎里

$('#login-form').submit(function(){
    $.ajax({
        url:"script.php",
        type:'POST',
        dataType:"json",
        data: $("#login-form").serialize()
    }).done(function(data){
       //do domething
    });
});

您应该能够在电子邮件和密码字段上添加按键功能。

$('#email').keypress(function(e){
    if (e.keyCode == 13) {
    $('#login-form').submit(/*...*/);
    }
}

我给你举了一个领域的例子。

使用 On 方法处理 输入和单击

 $('#element').on('click keypress', function(event) {
var check = 1; // Default for Click
if (e.keyCode == 13) //When Enter Key is pressed
{
var check = 1;
 }
else
{
 var check = 0; // other keys pressed
}
if (check == 1)
{
 $.ajax({
    url:"script.php",
    type:'POST',
    dataType:"json",
    data: $("#login-form").serialize()
}).done(function(data){
   //do domething
    });
  }
         });

这个想法是这样的:

$("input").keypress(function(event) {
    if (event.which == 13) {
        event.preventDefault();
        runAjax();
        // or
        // runSubmit();
    }
});
$('#login').click(function(){
    runAjax();
    //or 
    //runSubmit();
});
function runAjax(){
    $.ajax({
        url:"script.php",
        type:'POST',
        dataType:"json",
        data: $("#login-form").serialize()
    }).done(function(data){
       //do domething
    });
}
function runSubmit(){
    $("form").submit();
}