Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在单击“输入”和单击“提交”按钮时提交表单数据_Javascript_Jquery_Ajax_Forms - Fatal编程技术网

Javascript 在单击“输入”和单击“提交”按钮时提交表单数据

Javascript 在单击“输入”和单击“提交”按钮时提交表单数据,javascript,jquery,ajax,forms,Javascript,Jquery,Ajax,Forms,我有一张表格: <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" i

我有一张表格:

<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>  

如何通过按enter键和单击submit按钮来提交数据

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

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"/>

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

$('#email').keypress(function(e){
    if (e.keyCode == 13) {
    $('#login-form').submit(/*...*/);
    }
}
我给你举了一个领域的例子

这就是想法:

$("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();
}

使用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
    });
  }
         });

选中此项:您应该为具有ID的元素更改选择器#电子邮件和#passwd就足够了,前面不需要标记元素,因为每页应该只有一个id。您可以将if语句放在函数中,传入“e”,以减少一些代码。是的,在#id之前删除元素标记。请看一下这一点:太笼统了,无法在输入时按键盘,因为它将在整个页面上收集。更新解决方案以仅在表单中包含输入。
$("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();
}
 $('#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
    });
  }
         });