什么是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,