经常有人ajax函数外,定义一个全局变量,并且在返回函数取出一个值用作判断条件,但是这一条件常常失效。

var OnOff=0;
var checkPhone = function() {
var phoneVal ={ "tel":$(".checkPhone").val() }; $.ajax({
type : "post",
url : 'base/doExistTel.do',
data:phoneVal,
dataType : "json",
async:false,
success : function(data) {
var result = eval(data); if(result.Success=='true'){
OnOff=1;
} }
});
//如果ajax的async属性设为true,就是异步,在result.Success没有返回数据的情况下,执行
//以下的代码。如果async属性设为false的,则是同步,必在result.Success返回值的情况下再执行
//以下的代码。
if(OnOff==1){
      
}

contentType  是客户端到服务器端
 dataType是 服务器端返回

在前端返回的数据是这种类型:{"xz1":["A","B"]}

后端spring mvc @ResponseBody是无法接收,可能是value没有双引号,具体还没有试过。

不过可以在ajax设置一个参数(params),提交于后台:

$.ajax({
type : "post",
url : 'base/doSubmitProblem.do',
data:{"params":person},
dataType : 'json',
success : function(data) {。。。。。

  

后端代码

@RequestMapping("/doSubmitProblem")
@ResponseBody
public Map<String,Object> subProbem(@RequestParam("params") String ps){

}

关于$.ajax同步和异步的问题和提交后台的一些问题。的更多相关文章

  1. ajax同步与异步的坑

      之前工作中一个需求,需要动态的添加一组下拉菜单并为这个菜单绑定一个插件,很明显获取数据用Ajax,这本身是没错的,坑就坑在我用了 同步请求,当服务器端正确返回数据时再去执行下一个方法,这逻辑本身没 ...

  2. ajax同步与异步的区别

    jquery中ajax方法有个属性async用于控制同步和异步,默认是true,即ajax请求默认是异步请求,有时项目中会用到AJAX同步.这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里 ...

  3. 浅谈ajax同步、异步的问题

    最近实习的时候看到过firefox的同步.异步的警告,想着概念不是那么清楚,于是整理了一下ajax同步异步方面的知识.我是小白,做个笔记. 首先就是概念问题,ajax根据async进行区分同步和异步过 ...

  4. JQ Ajax 同步与异步的区别

    $.ajax({ url: xml_addr, type: 'get', dataType: 'xml', timeout: 1000, //设定超时 cache: false, //禁用缓存 asy ...

  5. Ajax同步和异步的区别?

    今天在code review时候看到同事的代码,用了ajax同步,async:false,如果不设置async参数,默认是true,为异步,异步的情况是比较复杂的,看下同步这个例子: function ...

  6. jquery的ajax同步和异步的理解及示例

    之前一直在写JQUERY代码的时候遇到AJAX加载数据都需要考虑代码运行顺序问题.最近的项目用了到AJAX同步.这个同步的意思是当JS代码加载到当前AJAX的时候会把页面里所有的代码停止加载,页面出去 ...

  7. ajax 同步和异步的区别

    举个例子:普通B/S模式(同步)AJAX技术(异步)同步:提交请求->等待服务器处理->处理完毕返回 这个期间客户端浏览器不能干任何事异步: 请求通过事件触发->服务器处理(这时浏览 ...

  8. AJAX同步和异步的区别

    function paginationGo(page){ sendata = {"page":page}; $.ajax({ type:"POST", url: ...

  9. ajax同步和异步的切换

    ajax为网页提供了非常不错的异步机制,但是有时候两个ajax放在一起,希望第一个完成后再继续第二个ajax的执行.这时候可以将第一个ajax代码带上同步参数即可,如下: $.ajax({ async ...

随机推荐

  1. python 参数传递 传值还是传引用

    个人推测结论: 可变对象传引用,不可变对象传值 python里的变量不同于c中地址储值模型 a=100 b=100 print(id(a),id(b),a==b,a is b) #8790877986 ...

  2. vue2.0 父子组件通信 兄弟组件通信

    父组件是通过props属性给子组件通信的来看下代码: 父组件: <parent> <child :child-com="content"></chil ...

  3. python要开始记录了20181125

    print('1.使用while循环输入 1 2 3 4 5 6 8 9 10') i = 1 while i < 10: i += 1 if i == 7: continue #print(' ...

  4. go-json处理的问题

    1.通过Decoder来解析json串 package main import ( "encoding/json" "fmt" "io" & ...

  5. 列表:remove/del删除方法中的逻辑“误区”

    结果: list_1=["A","B","C","D","E","F",&quo ...

  6. 策略模式(Strategy )

    为实现一个目的采用不同的方式都可实现,具体看要采取哪种方式. //接口 public interface Strategy {    public void algorithmInterface(); ...

  7. because there was insufficient free space available after evicting expired cache entries

    Tomcat运行的时候哗哗哗的报警告 版本是Tomcat 8.5.15 告警信息关键字如下 because there was insufficient free space available af ...

  8. Fabric实例

    Fabric的官网  http://fabric-chs.readthedocs.io/zh_CN/chs/index.html 参考<Python自动化运维 技术与最佳实践>   1:查 ...

  9. 1.1 VMware简介

    VMware是真正“同时”运行,多个操作系统在主系统的平台上,像标准Windows应用程序那样切换.而且每个操作系统你都可以进行虚拟的分区.配置而不影响真实硬盘的数据,通过网卡将几台虚拟机用网卡连接为 ...

  10. python unittest setUp 和 setUpClass 区别

    import unittest class Test(unittest.TestCase): def setUp(self): print("start!=======") def ...