关于Jquery使用Return后还会提交问题

$(function() {

    $("#BtnAdd").click(function() {
        var name = $.trim($("#TxtCategoryName").val());
        if ("" == name) {
            alert('请输入类别名称!');
     
            return false;
        }
        else {
            $.get("CheckName.aspx?M=c&t=" + new Date().getTime(), { Name: name }, function(data) {
                if ("false" == data) {
                    alert('该类别已存在!');
                  
                    return false;
                }
                else {
                    return true;
                }
            })
        }
     })
})
会提交,因为在异步提交的过程中不会执行return
$(function() {
    var i = 0;
    $("#BtnAdd").click(function() {
    var name = $.trim($("#TxtCategoryName").val());
        if ("" == name) {
            alert('请输入类别名称!');
            i = 1;
           
        }
        else {
            $.get("CheckName.aspx?M=c&t=" + new Date().getTime(), { Name: name }, function(data) {
            if ("false" == data) {             
                    alert('该类别已存在!');
                    i = 1;
               
                }
                else {                   
                    i = 2;                 
                }
            })
        }
        if (0 == i || 1 == i) {         
            return false;
        }
        else {
            return true;
        }
    })   
})
不会提交

 

 

$(function() { 
     var i = 0;   
    $("#Button1").click(function() {                      
    var name = $.trim($("#TextBox1").val());   
        if ("" == name) {   
            alert('请输入类别名称!');  
             i = 1;  
             return false;
        }   
        else {   
            $.ajax({   
                 async:false,         
                 type: "POST",
                 url: "CheckName.aspx?Name="+name+"&t="+new Date().getTime(),               
             success: function(msg){
                     if ("true"==msg)
                     {
                     i=2;

                    }
                     else 
                     {
                     i=1;
                       alert("已存在");
                     }
                     
                        }
                 });                  
               
            }    
            if (1==i)
            {
              return false;  
            }    
            else
            {
            return true;
            } 
})  
})  

 

同步提交

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的jQuery表单验证和提交的例子: ```html <form id="myform"> <label for="username">用户名:</label> <input type="text" id="username" name="username"><br> <label for="password">密码:</label> <input type="password" id="password" name="password"><br> <input type="checkbox" id="allow" name="allow" checked> <label for="allow">同意协议</label><br> <button type="submit">提交</button> </form> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <script> $(function() { var $username = $('#username'); var $password = $('#password'); var $allow = $('#allow'); var $form = $('#myform'); // 验证用户名 function validateUsername() { var value = $username.val(); if (!value) { alert('用户名不能为空'); return false; } return true; } // 验证密码 function validatePassword() { var value = $password.val(); if (!value) { alert('密码不能为空'); return false; } return true; } // 验证同意协议 function validateAllow() { if (!$allow.prop('checked')) { alert('请同意协议'); return false; } return true; } // 提交表单 function submitForm() { alert('提交成功'); $form.submit(); } // 绑定提交事件 $form.submit(function(event) { event.preventDefault(); // 阻止默认提交行为 if (validateUsername() && validatePassword() && validateAllow()) { submitForm(); } }); }); </script> ``` 该例子,我们使用jQuery选择器获取表单元素,并定义了三个验证函数:`validateUsername()`、`validatePassword()`和`validateAllow()`,分别用于验证用户名、密码和同意协议是否勾选。在提交表单时,我们通过`event.preventDefault()`阻止了默认的表单提交行为,并在验证通过后调用`submitForm()`函数提交表单。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值