我写了一个ajax 方法判断手机号不能重复
这是一个按钮 :
<asp:Button ID="smsbtnOK" runat="server" Text="发送" CssClass="button" Style="width:60px;" OnClientClick="return CheckMobile()" onclick="smsbtnOK_Click" />这是ajax方法 为什么提示了重复的手机号码之后还会走后台的按钮继续发送呢?
<script type="text/javascript">
        function CheckMobile() {
        var mobile=$("#<%=smsSendMobile.ClientID %>").val();
        mobile = mobile.replace(/\s+/g,",");
        var aid=<%=ActivityID %>;
            if (aid >0) {
                $.ajax({
                    type: "POST",
                    url: "/Ajax.aspx",
                    data: "method=CheckMobile&aid=" + aid + "&mobile=" + mobile ,
                    async: false,
                    success: function(data) {
                        data = eval('(' + data + ')');
                        if (data.successFlag > 0)
                        {
                           alert("该活动存在重复的手机号,请检查!");
                        } 
                    }
                });
            }
        }
        
     </script>

解决方案 »

  1.   

    alert("该活动存在重复的手机号,请检查!");
    return false;
      

  2.   

    <asp:Button ID="smsbtnOK" runat="server" Text="发送" CssClass="button" Style="width:60px;" OnClientClick="return CheckMobile()"/>
    <asp:Button ID="btnOK" runat="server" style="display:none;" onclick="smsbtnOK_Click" />
     
    这是ajax方法 为什么提示了重复的手机号码之后还会走后台的按钮继续发送呢?
     <script type="text/javascript">
             function CheckMobile() {
             var mobile=$("#<%=smsSendMobile.ClientID %>").val();
             mobile = mobile.replace(/\s+/g,",");
             var aid=<%=ActivityID %>;
                 if (aid >0) {
                     $.ajax({
                         type: "POST",
                         url: "/Ajax.aspx",
                         data: "method=CheckMobile&aid=" + aid + "&mobile=" + mobile ,
                         async: false,
                         success: function(data) {
                             data = eval('(' + data + ')');
                             if (data.successFlag > 0)
                             {
                                alert("该活动存在重复的手机号,请检查!");
                             } 
                             else
                             {
                                $("#btnOK").click();
                             }

                         }
                     });
                 }
             }
             
          </script> 
      

  3.   

    ajax是异步的,到alert提示时,函数早返回了
      

  4.   

    两个按钮,一个隐藏了,一个没隐藏
    没隐藏的赋值ajax检测,检测成功,自动调用隐藏的那个按钮提交
      

  5.   

    函数写在 url: "/Ajax.aspx"  里面,
    if 重复号码
       返回 "该活动存在重复的手机号,请检查!"
    else 校验通过
        后续操作
        返回 “xxxx成功”