jQuery专注于警报框与点击按钮

jQuery focus on Alert box with clicking on button

本文关键字:按钮 专注 于警报 jQuery      更新时间:2023-09-26

我有一个表单,提交表单后,当按钮被点击使用jQuery像这样。

function validate(){
   if($('#firstname').val() =="")
           alert("Please enter your first name");
   else if($('#lastname').val() == "")
    alert("Please enter your last name");
   else if( $('#association').val() == "")
    alert("Choose your association");
   else if($('#association_no').val() == "")
    alert("Please enter your association number");
   else
    $('#register').submit();
  }

  $(function(){

       $(".enter_submit").keyup(function(event) {
        if(event.keyCode === 13) 
        validate();
      })
  })

警告框显示良好,但我的问题是,当我在显示警告框后按enter键时,它会给出另一个警告框,而不是摆脱警报(当我用鼠标单击OK时工作良好)。在FF中,它给出了#prevent more alerts from this page。所以我相信它仍然专注于表单,即使在alert显示之后。

指定出现警告框后返回False。这可能不会同时显示其他警告框。

function validate() {
            if ($('#firstname').val() == "") {
                alert("Please enter your first name");
                return false;
            }
            else if ($('#lastname').val() == "") {
                alert("Please enter your last name");
                return false;
            }
            else if ($('#association').val() == "") {
                alert("Choose your association");
                return false;
            }
            else if ($('#association_no').val() == "") {
                alert("Please enter your association number");
                return false;
            }
            else {
                $('#register').submit();
                return true;
            }
        }

        $(function () {
            $(".enter_submit").keyup(function (event) {
                if (event.keyCode === 13)
                    return validate();
            });
        });

希望对您有所帮助

谢谢Prashant

我使用模糊功能修复了这个问题

  $(".enter_submit").keyup(function(event) {
        $(this).blur();
         if(event.keyCode === 13) 
        return validate();
      })

我认为,即使在显示警报时,文本字段仍然处于焦点上,因此必须将其移出焦点,即模糊它。谢谢大家的回复。