如何用jQuery触发回space?

How to trigger back space with jQuery?

我有下面的代码,可以在按键按下时触发各种事件

    $('#input-div').keydown(function(e) {
if(e.which == 13) {
    userInput = $(this).val();
    $(this).val(userInput.substring(0,0));

这会清除输入框。但是由于按下回车键,光标转到第二行。我希望在释放回车键后光标回到初始位置;上键。

有什么帮助吗?

只需添加e.preventDefault():

$('#input-div').keydown(function(e) {
  if(e.which == 13) {
    userInput = $(this).val();
    $(this).val(userInput.substring(0,0))
    e.preventDefault()
  }
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea id="input-div"></textarea>

    <!DOCTYPE html>
<html>
<head>
    <title></title>
    <script
    src="https://code.jquery.com/jquery-3.1.1.min.js"
    integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8="
    crossorigin="anonymous"></script>
</head>
<body>
  <form method="POST" id="userform">
      <input type="text" name="firstname" id="firstname">
      <input type="text" name="lastname" id="lastname">
  </form>

  <script type="text/javascript">
    $("#userform").submit(function(e){
       return false;    
   });

    $("#userform input").keydown(function(e) {
        if(e.which == 13) {
            userInput = $(this).val();
            $(this).val(userInput.substring(0,0));
            $("#userform input#firstname").focus();
        }    
    });    
</script>
</body>
</html>

你可以使用 .focus() 来聚焦特定的输入框