使用 javascript 按 Enter 键提交表单

问题描述 投票:0回答:11
javascript forms key submit enter
11个回答
39
投票

试试这个:

document.getElementById('email').onkeydown = function(e){
   if(e.keyCode == 13){
     // submit
   }
};

18
投票

请使用下面的代码片段...它应该添加到脚本块中

<script>
    document.onkeydown=function(evt){
        var keyCode = evt ? (evt.which ? evt.which : evt.keyCode) : event.keyCode;
        if(keyCode == 13)
        {
            //your function call here
        }
    }
</script>

10
投票

以下所有代码都应添加到脚本块或文件中。 定义提交函数:

function submitForm(){
    document.priceOptionForm.submit();
    document.priceOptionForm.method='post';
}

对于提交表单的回车键:

document.onkeydown=function(){
    if(window.event.keyCode=='13'){
        submitForm();
    }
}

要使链接有效:

document.getElementById("profile_price").onclick=submitForm;

您可以参考http://jsfiddle.net/honglonglong/YMX2q/进行尝试。


9
投票

使用

<input type="submit">
而不是链接。然后回车键就会自动起作用。


5
投票

简单地制作一个像这样的隐藏按钮
HTML

<input type="submit" id="submitbtn"  />

CSS

#submitbtn{display:none;}

当用户按下回车按钮时,表单将被提交
别忘了输入 type="submit"


1
投票
// Process form if use enter key. put script in head.    
document.onkeyup = enter;    
function enter(e) {if (e.which == 13) submitForm();}

// uses keyup not down as better practice imo    
// submitForm() is user function that posts the form

1
投票

您可以在表单标签中放置默认按钮ID,自动触发

<form id="form1" runat="server" defaultbutton="Button1">

<asp:Button ID="Button1" runat="server" Text="Button"

    OnClick = "Button1_Click" />

<asp:Button ID="Button2" runat="server" Text="Button"

    OnClick = "Button2_Click" />

<asp:Button ID="Button3" runat="server" Text="Button"

    OnClick = "Button3_Click" />

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

</form>

0
投票

哦,这是因为 HTML 表单元素无法将链接识别为按钮,点击.. 你需要用按钮替换它...

<input type="submit" value="this will display on your button" onClick="javascript:void(0)">

但是如果你想让它看起来像一个链接,你应该在 css 中这样做

<style type="text/css">
input{background-color:white;border:0 none;}
</style>

0
投票

您可以在

onKeyDown
标签中使用
input

以下是详细内容。

const handleKeyDown = (e) => {
   if(e.key === "Enter") {
        //form actions
   }
}

<form action="" method="get" class="priceOptionForm" name="priceOptionForm">
   <input name="paypal_email" type="text" value="whatever" id="email" onKeyDown={handleKeyDown} />
   <a href="javascript:void(0);" class="bluebtn" id="profile_price" style="width:60px;margin-top:5px;">Save all</a>
</form>

0
投票

当用户单击提交按钮(

<button>
<input type="submit">
)或在表单中编辑字段(例如 <input type="text">)时按 Enter
 时,将触发提交事件。直接调用 
form.submit()
 方法时,事件不会发送到表单。
检查文档


0
投票

由于“keycode”已已弃用,请使用此:

document.getElementById('element').onkeydown = function (e) { if (e.key == 'Enter') { } };
    
© www.soinside.com 2019 - 2024. All rights reserved.