Javascript 或 jQuery 当用户单击提交按钮以外的链接时弹出

Javascript or jQuery popup when user click links other than Submit button

我创建了一个 form,用户可以在其中创建他的个人资料,现在我希望如果用户不 click save/submit 页面上的按钮,然后单击除保存之外的任何其他可用 link。

然后他应该会收到 JavaScript 的确认弹出窗口,提示您正在中止配置文件的创建。我找不到任何可以实现此目的的事件。

其他 link 是我页面上可用的导航 link。

如果您将按钮用于提交,将其他按钮用作 link,那么您可以这样找到:

$(document).ready(function() {
  $(document).('on','click',function(){
    var pressedButton = $(this).text();
    if(pressedButon == "Submit" || pressedButton =="Save")
      {
        return false;
      }
    else
      {
        $("a").on('click',function() {
          var confirmAns = confirm('Your message');
          if(confirmAns == true)
            {
              // DO whatever you want...
            }
          else
            {
              //Do whatever you want...
            }
        });
      }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

你可以使用onblur事件来实现你的目的。因此,当用户单击网页中的任意位置时,onblur 事件会自动触发。 您应该在 save/submit 按钮上使用 onblur 事件。

<button onblur="myFunction()" type="button">Save</button>

<script>
function myFunction() {
  var txt;
  var r = confirm("You are aborting the creation of profile");
  if (r == true) {
    return true;
  } else {
    return false;
  }
}
</script>

尝试使用一些插件。有一个 jQuery 插件 "Are You Sure"

所以你只需要下面的代码片段

$('form').areYouSure();
// OR
$('form.my_form_class').areYouSure();

插件提供了一些高级选项。查看它的文档。

如果我没理解错的话,你想要这两种可能: 1.User 点击提交按钮:表单被提交 2.User 点击 "a" link:收到提醒,要求确认退出注册过程。

第一点将自动完成,因为它是一个表单提交按钮,不需要额外的 jQuery。

第二点只需要以下代码即可显示确认按钮:

<script>
  $(document).ready(function(){
    $('a').on('click',function(e){
      if (!confirm("Are you sure you want to exit the registration process?")){
        e.preventDefault();
        return false;
      }
    });
  });
</script>