jQuery.ajax(url,[settings])
概述
通过 HTTP 请求加载远程数据。
jQuery 底层 AJAX 实现。简单易用的高层实现见 $.get, $.post 等。$.ajax() 返回其创建的 XMLHttpRequest 对象。大多数情况下你无需直接操作该函数,除非你需要操作不常用的选项,以获得更多的灵活性。
最简单的情况下,$.ajax()可以不带任何参数直接使用。
注意,所有的选项都可以通过$.ajaxSetup()函数来全局设置。
回调函数
如果要处理$.ajax()得到的数据,则需要使用回调函数。beforeSend、error、dataFilter、success、complete。
- beforeSend 在发送请求之前调用,并且传入一个XMLHttpRequest作为参数。
- error 在请求出错时调用。传入XMLHttpRequest对象,描述错误类型的字符串以及一个异常对象(如果有的话)
- dataFilter 在请求成功之后调用。传入返回的数据以及"dataType"参数的值。并且必须返回新的数据(可能是处理过的)传递给success回调函数。
- success 当请求之后调用。传入返回后的数据,以及包含成功代码的字符串。
- complete 当请求完成之后调用这个函数,无论成功或失败。传入XMLHttpRequest对象,以及一个包含成功或错误代码的字符串。
demo如下:
前台js代码:
var url = "/test/check"; $.ajax({ type: "post", url: url, // data: "para="+para, 此处data可以为 a=1&b=2类型的字符串 或 json数据。 data: {"para":1}, cache: false, async : false, dataType: "json", success: function (data ,textStatus, jqXHR) { if("true"==data.flag){ alert("合法!"); return true; }else{ alert("不合法!错误信息如下:"+data.errorMsg); return false; } }, error:function (XMLHttpRequest, textStatus, errorThrown) { alert("请求失败!"); } });
后台java代码:
/** * 校验 * * @return void */ public void check(){ Map<String,String> result = new HashMap<String,String>(); boolean flag = false; try{ String para= getPara("para"); //校验 代码... result.put("flag", "true"); renderJson(result);//返回json数据 }catch(Exception e){ result.put("flag", flag+""); result.put("errorMsg", e.getMessage()); renderJson(result);//返回json数据 e.printStackTrace(); } }
限时领取免费Java相关资料,涵盖了Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo/Kafka、Hadoop、Hbase、Flink等高并发分布式、大数据、机器学习等技术。
资料传送门: https://mp.weixin.qq.com/s/u2b_NVNuMuAPE0w4lc45fw
关注下方公众号即可免费领取:
来源:https://www.cnblogs.com/haha12/p/4727443.html