jquery的Ajax技术和PHP通信
为了更好的用户体验和实时交互,有时候我们需要要到ajax技术来实现和后台服务器的数据交换。而jQuery的ajax技术是我认为是最简单的,在开发过程中也是很常见的。
1. $.get()方法实现:
<!--html页面-->
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>index</title>
<script type="text/javascript" src="jquery.js"></script>
<style type="text/css">
#box{
border: 2px solid #f00;
width: 1000px;
height: 300px;
}
</style>
</head>
<body>
<div id="box">
</div>
<button id="btn">点我</button>
<script type="text/javascript">
$("#btn").click(function(){
$.get("test1.php",function(data){
$("#box").append(data);
})
})
</script>
</body>
</html>
//php页面
<?php
echo "<img src='3.jpg' width='100' height='100'>";
?>
2. $.post()方法实现:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>index</title>
<script type="text/javascript" src="jquery-1.8.2.min.js"></script>
</head>
<body>
<!-- <form method="post" action="info.php"> -->
<form>
<select name="city">
<option>请选择城市---哈</option>
<option>北京</option>
<option value="tianjin">天津</option>
<option value="shenzhen">深圳</option>
</select>
<input type="submit" id="sbt" name="">
</form>
<script type="text/javascript">
$("#sbt").click(function(){
// alert(1);
//发起ajax请求
// $.get("info.php",{"id":33},function(data,status){
// alert("数据:" + data + "\n状态:" + status);
// });
$.post("info.php","city=tangshan&country=macheng",function(data){
alert(data);
});
return false;
})
</script>
</body>
</html>
注意:
无论是$.get()方法和$.post()方法都可以去服务器传入值和取值,但是一般情况下二者还是有很大区别的,如下:
1. $.get()一般用于从服务器取数据,并且优先去从缓存中去取数据。
2. $.post()一般用于向服务器传送数据,但是硬是取数据的时候是不能够从缓存中取的。传送方式有两种,一种是以字符串的形式,一种是以json的形式。例如
//json形式
$.post("index.php", {"name":"ppm","age":20},function(data){
})
//字符串形式
$.post("index.php","name=pcm & age=20",function(data){
})