【问题标题】:Trigger a button click with jQuery when enter button click输入按钮单击时使用 jQuery 触发按钮单击
【发布时间】:2017-07-26 05:18:16
【问题描述】:

这是我的 jQuery 代码。当我点击输入时,应该显示剩余的文本框而不是使用继续按钮

$("#btnValidateMember").click(function () {
  if ($("#txtUserEmail").val() == "") {
    $("#txtUserEmail").addClass("error");
    //$("#spnUserEmail").text("required");
  }
  else if($("#spnUserEmail").text() == "")
  {
    GetMemberDetailsbasedonEmailId($("#txtUserEmail").val());
  }
  $("#ddlBusinessState").empty().append($("<option/>"));
  //$("#ddlBusinessCity").empty().append($("<option/>"));
  $("#ddlBusinessState").select2({ placeholder: 'State', allowClear: false });
  //$("#ddlBusinessCity").select2({ placeholder: 'City', allowClear: false, width: '366px' });
  BindStatesBasedOnCountryId("1",`enter code here` "ddlBusinessState", "");enter code here

});

【问题讨论】:

  • 你的意思是点击回车按钮会触发点击#btnValidateMember

标签: javascript jquery enter


【解决方案1】:

$("#textbox").on('keydown', function(e) {
  const ENTER_KEY_CODE = 13;
  const ENTER_KEY = "Enter"
  var keycode = e.keyCode || e.which;
  var key = e.key;
  if (keycode == ENTER_KEY_CODE || key == ENTER_KEY) {
    document.querySelector("#BtnValidateMember").click();
  }
});
.button {
  padding: 15px 25px;
  font-size: 24px;
  text-align: center;
  cursor: pointer;
  outline: none;
  color: #fff;
  background-color: #4CAF50;
  border: none;
  border-radius: 15px;
  box-shadow: 0 9px #999;
}

.button:hover {
  background-color: #3e8e41
}

.button:active {
  background-color: #3e8e41;
  box-shadow: 0 5px #666;
  transform: translateY(4px);
}

#textbox {
  border-radius: 15px;
  cursor: pointer;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button id="BtnValidateMember" class="button" onclick="alert('Button Pressed')">Button</button>
<input type="search" id="textbox">

【讨论】:

  • 停止使用whichkeyCode。我们是人类。使用Event.key
  • 我们如何使用e.which | | e.keyCode | | e.key | |是or,所以javascript可以决定which使用一个
【解决方案2】:

请看这个jsbin

$(document).keypress(function(e) {
    if(e.which == 13) {
        $('#btnValidateMember').trigger('click');
    }
});

jQuery以上的代码会检测到按键事件 如果你按下了回车键,它会触发#btnValidateMember按钮的点击事件。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2011-06-13
  • 1970-01-01
  • 2012-01-18
  • 1970-01-01
  • 1970-01-01
  • 2010-12-31
  • 2011-04-03
相关资源
最近更新 更多