js方法内Ajax请求数据判断,验证无效(OnClientClick="return Method();"),还是直接执行后台代码

function CheckAdd() {
 var flag = true;
    $.ajax({
            cache: false,
            async: false,
            url: "/ajaxpage/getajax.aspx?t=adjserviceclientlist&Cellphone=" + Cellphone + "&a=" + Math.random(),
            dataType: 'json',
            success: function (data) {
                if (data != null) {
                    var result = data["Remark"];
                    if (result == '此号码已经存在并且已经绑定了主号,不能再次绑定!') {
                        alert(result);
                        flag = false;
                    }
                    if (result == '此号码已经存在,确定要绑定到主号上吗?') {
                        if (confirm('此号码已经存在,确定要绑定到主号上吗?')) {
                            $('#MainContent_Hiddend_IsExitCellPhone').val('1');
                        } else {
                            flag = false;
                        }
                    }
                }
            }
    })
    if (!flag) {
        return false;
    }
}

 <asp:Button ID="Button4" runat="server" Text="提  交"  OnClick="btnAddCustomer_Click" OnClientClick="return CheckAdd();" />

问题一:ajax默认为异步执行,所以,当执行ajax时,其实也在执行后台方法了。如:

async: false即为同步了。

问题二:ajax请求返回的数据里,进行判断,不能直接进行 return false操作,需要赋值,请求方法外执行。如:

if (!flag) {

return false;

}

js方法内Ajax请求数据判断,验证无效(OnClientClick="return Method();"),还是直接执行后台代码,布布扣,bubuko.com

时间: 2024-10-27 07:01:34

js方法内Ajax请求数据判断,验证无效(OnClientClick="return Method();"),还是直接执行后台代码的相关文章

session失效,使用ajax请求数据被拦截,此时正常的处理逻辑是跳到登录界面,而不是界面没有变化(java判断是否是ajax请求)

在登录过滤器中,判断请求是ajax请求还是超链接或者地址栏变化的请求 if (httpServletReq.getHeader("x-requested-with") != null && httpServletReq.getHeader("x-requested-with").equalsIgnoreCase("XMLHttpRequest")) { JSONObject jsessiontimeout = new JSONOb

关于ajax请求数据,并将数据赋值给全局变量的一些解决方法

在使用ajax请求数据是,开始的时候是打算将ajax的数据取出,并赋予给全局变量,但是在实际编码过程中发现并不能将数据赋予给最开始定义的全局变量,出现这个问题的原因是由于ajax异步加载的原因,所以只能用其他方法来解决,下来是解决的方法 第一个解决方法没有使用全局变量,直接在ajax请求中将请求到的数据赋值给需要的地方 第二个方法是将请求到的数据,通过方法传参来传递给一个方法,然后再方法中来调用请求到的数据,下面是实现的代码 var testData; $.ajax({ url: '/test'

mockjax MOCK.js的拦截ajax请求

今天看了下 mock.js的拦截请求 .https://github.com/nuysoft/Mock/blob/master/src/mockjax.js //覆盖(拦截) Ajax 请求,目前内置支持 jQuery.Zepto.KISSY 拦截请求的前提是基于各类库的 内置方法来进行拦截. 比如jquery. 在$.ajax() 之前 会有一个前置过滤器$.ajaxPrefilter() 先进行处理,然后根据参数的不同来分发请求(模拟或者直接发送请求). 在模拟的时候 可以根据给出的参数 返

jQuery 中 ajax 请求数据应用的一个小demo

举一个jquery中ajax的应用小 demo 便于以后的更多项目拓展 ,这里要注意的是保存的文件名和文件图片路径问题 ... ajax01.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title> ajax小例子 </title> </head> <body> <!--

js 实现对ajax请求面向对象的封装

AJAX 是一种用于创建快速动态网页的技术.通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 在js中使用ajax请求一般包含三个步骤: 1.创建XMLHttp对象 2.发送请求:包括打开链接.发送请求 3.处理响应 在不使用任何的js框架的情况下,要想使用ajax,可能需要向下面一样进行代码的编写 var xmlHttp = xmlHttpCreate();//创建对象 xmlHttp.onreadysta

原生与jQuery封装的ajax请求数据及状态码

原生Ajax 请求数据 btn.addEventListener('click',function(){ if(window.XMLHttpRequest){ var xhr = new window.XMLHttpRequest(); }else{ //兼容IE浏览器 var xhr = new ActiveXObject('Microsoft.XMLHTTP'); } //请求方式get/post //请求URL //ture 异步请求:false 同步请求 xhr.open('get','

JQuery EasyUI弹出对话框解决Asp.net服务器控件无法执行后台代码的方法(转)

原文:JQuery EasyUI弹出对话框解决Asp.net服务器控件无法执行后台代码的方法 jquery-easyui是一个基于jquery的图形界面插件,利用easyui可以创建很多好看的网页界面效果,easyui的相关地址是:http://jquery-easyui.wikidot.com/: easyui的中文文档地址是:http://www.easyui.net/,本人也利用easeyUI在做一些页面效果.由于我很喜欢那种弹出的对话框界面,因此在界面中应用了Dialog类来处理一些确认

AJAX请求数据_demo

本篇列举三个demo: 1.用ajax请求json格式数据(javascript) 2.用ajax请求json格式数据(Jquery) 3.用jsonp请求json格式数据(Jquery) 页面只有实现两个功能(用get请求-获取数据 & 用post请求-设置修改数据)三个demo页面布局如下: <h1>员工查询</h1> <label>请输入员工编号:</label> <input type="text" id="

Ajax请求数据与删除数据后刷新页面

1.ajax异步请求数据后填入模态框 请求数据的按钮(HTML) <a class="queryA" href="javascript:void(0)" onclick="query(${register.id})"> <span class="glyphicon glyphicon-search"></span></a>  ajax异步请求数据后给id为queryInfo的模态