什么是ajax?
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。
AJAX 不是新的编程语言,而是一种使用现有标准的新方法。
AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。
什么是json?
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。它是基于 JavaScript Programming Language ,Standard ECMA-262 3rd Edition - December 1999 的一个子集。 JSON采用完全独立于程序语言的文本格式,但是也使用了类C语言的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。
实例
body部分
<body>
<!-- action="b.jsp"不存在提交form了,submit框已没有存在的意义 异步操作,当前页面不跳转-->
<form>
<input id="userName" name="userName" value="xiaoming">
<!-- ajax方式submit框已没有存在的意义
<input type="submit">-->
<img id="img" src="img/点赞.png">
</form>
</body>
script部分
<script type="text/javascript">
$(function(){
$("#img").click(function(){
var usrName = $("#userName").val();
var myfunction=function(result){
alert(result);
};
// var errorFunction=function(){
// alert("发生错误");
// };
var errorFunction=function(XMLHttpRequest,textStatus){
// alert("发生错误");
if(XMLHttpRequest.status==404){
alert("找不到服务器[404]");
}
else if(XMLHttpRequest.status==500){
alert("服务器繁忙,请稍后重试[500]");
}
else{
alert('服务器错误['+XMLHttpRequest.status+']');
}
} $.ajax({
url : 'B', //目标为Servlet B
type : 'GET', // B的 doget方法
data : {
userName : usrName
},//提交给Servlet的数据.jeson格式 []
dataType : 'text',//返回类型文本
success : myfunction,//成功后的回调函数,result为服务器返回的内容
error: errorFunction,
timeout:3000 //超时的标准
});
});
});
</script>
发送data主要方式
1.json
data : {
userName : usrName
},//提交给Servlet的数据.jeson格式
2.url拼接
'B?userName='+$("#userName").val(),
3.表单的序列化serialize(推荐)
var ff = $("#frm1").serialize();
data : ff,