使用按键并单击提交

Kei*_*ith 3 javascript jquery

如何在同一个if语句中进行单击事件和按键操作?

现在我有:

if($('.test').is(':visible;)){
   $('button').click(function(e){
      ..do something here
    }else {
     ..do something here
 });
Run Code Online (Sandbox Code Playgroud)

.test是值字段,当用户输入值时,我希望他们能够单击回车键,而他们在此框中提交信息或使用按钮来执行此操作.这不是一种形式,它们都是div.

epa*_*llo 5

因此,将逻辑放入一个通用函数中,并将其命名为click和keypress.

    (function () {
    
       function yourLogic () {
         $(".out").text($(".yourInput").val());
       }
    
       $("button").on("click", yourLogic);
       $(".yourInput").on("keyup", function (evt) {
           if (evt.which===13) yourLogic();
       });
    
    }());
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="yourInput" />
<button>Click</button>
<div class="out"></div>
Run Code Online (Sandbox Code Playgroud)

或者不要使用常用功能并调用按钮上的click()事件.

   $(".yourInput").on("keyup", function (evt) {
       if (evt.which===13) $("#yourButton").trigger("click");
   });
Run Code Online (Sandbox Code Playgroud)