单击部分外部时向用户显示确认消息

时间:2017-12-10 12:43:23

标签: javascript jquery html angularjs

我有一个网页,其中有一个部分(它创建一些内容),还有顶部栏和带有内部链接的侧边栏(顶部栏和侧栏是ng控制器) 如果用户在创建内容时离开页面,或者如果他点击顶部栏或侧边栏中的任何链接,我想为用户显示确认消息。 我知道要将页面留给外部我可以使用的东西:

$(window).bind('beforeunload', function(){
    return 'some text here';
});

但是我还没弄明白如何让侧边栏/顶部按钮显示出来。 此外,我不想点击网站其他部分的那些按钮显示此消息。它仅适用于此内容创建流程部分。

先感谢所有专家。

1 个答案:

答案 0 :(得分:0)

以下是您可以实现的目标。单击表单外的任何位置检查表单是否为空。如果表单不是空的,则显示您想要的任何消息。如果找到表单,则非空限制使用导航操作,并显示消息。使用标记isFormEmpty,您可以检查用户是否已使用空表单。



var isFormEmpty = true;
function checkIfFormNonEmpty(){
$(":input").each(function() {
   if($(this).val() !== "")
   isFormEmpty = false;
   console.log();
});
}


$(".myClass").on("click",function(){
    checkIfFormNonEmpty();
    if(!isFormEmpty){
      alert("U cant leave empty form.")
      return false;
    }else{
      alert('yes you can go anywhere after clicking me.');
    }
 })

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<a href="#" class="myClass" >click Me</a>
<form id="contentForm">

<input type="text" placeholder="Enter Nmae.">
<input type="Password" placeholder="Enter Password">
<button type="button"  class="myClass">Submit Form</button>
</form>
&#13;
&#13;
&#13;