【问题标题】:Clicking on Enter button without making any changes单击 Enter 按钮而不进行任何更改
【发布时间】:2016-02-26 10:24:31
【问题描述】:

我正在创建一个带有多个标签的表单,并且我使用了这个 javascript,因此我可以点击 Enter 按钮(在键盘中)而无需跳转到 submit按钮(在表单中),以下效果很好,但仅在 1 个标签中,如何在不复制并粘贴它更改标签 ID 的情况下将其用于所有标签?

<script>
    $(document).ready(function() {
        $('#text1').keydown(function(event){
            if(event.keyCode == 13) {
                event.preventDefault();
                document.getElementById("text1").value = document.getElementById("text1").value + "\n";
                return false;
            }
        });

        $('#text2').keydown(function(event){
            if(event.keyCode == 13) {
                event.preventDefault();
                document.getElementById("text2").value = document.getElementById("text2").value + "\n";
                return false;
            }
        });
    });

    ...
    ...

</script>

【问题讨论】:

  • 使用类或$('FORM_ID :input')...这将选择所有输入元素....
  • 如果他们的 ID 不同怎么办,因为我在其他一些不同的脚本中使用了他们
  • 你不需要身份证...$(':input').keydown(function(event) { if (event.keyCode == 13) { event.preventDefault(); } });
  • 谢谢@RayonDabre,这个问题已经解决了

标签: javascript php jquery forms label


【解决方案1】:

由于您将按键侦听器绑定到 $('#text1')$('#text2'),因此它只会在聚焦这些元素时按下按键时进行侦听。

您必须将侦听器绑定到捕获所有输入的不同选择器,例如:

$('.form-class input').keydown(function(event){
    if(event.keyCode == 13) {
        event.preventDefault();
         ...
    }
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-07-15
    • 2019-03-07
    • 2017-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多