基于JQuery框架的AJAX

  1. query这个类库相当不错...简单..功能还强大  
  2.   
  3.   
  4.   
  5. 在JQuery中,AJAX有三种实现方式:$.ajax(),$.post,$.get()。  
  6.   
  7.   
  8.   
  9. XHTML(主要):  
  10.   
  11. <div id="result" style="background:orange;border:1px solid red;width:300px;height:400px;"></div>  
  12.   
  13. <form id="formtest" action="" method="post">  
  14.   
  15. <p><span>输入姓名:</span><input type="text" name="username" id="input1" /></p>  
  16.   
  17. <p><span>输入年龄:</span><input type="text" name="age" id="input2" /></p>  
  18.   
  19. <p><span>输入性别:</span><input type="text" name="sex" id="input3" /></p>  
  20.   
  21. <p><span>输入工作:</span><input type="text" name="job" id="input4" /></p>  
  22.   
  23. </form>  
  24.   
  25. <button id="send_ajax">提交</button>  
  26.   
  27. <button id="test_post">POST提交</button>  
  28.   
  29. <button id="test_get">GET提交</button>  
  30.   
  31.   
  32.   
  33.   
  34.   
  35. JS:  
  36.   
  37. 1、引入jquery框架:  
  38.   
  39. <script   type="text/javascript" src="../js/jquery.js"></script>  
  40.   
  41.   
  42.   
  43. 2、构建AJAX,JQUERY的好处是不需要在XHTML中使用JS代码来触发事件了,可以直接封装在JS文件中:  
  44.   
  45. <script type="text/javascript">  
  46.   
  47. //$.ajax()方式  
  48.   
  49. $(document).ready(function (){  
  50.   
  51. $('#send_ajax').click(function (){ //直接把onclick事件写在了JS中,而不需要混在XHTML中了  
  52.   
  53.       var params=$('input').serialize(); //序列化表单的值,与prototype中的form.serialize()相同  
  54.   
  55.       $.ajax({  
  56.   
  57.             url :'ajax_test.php',  //后台处理程序  
  58.   
  59.             type:'post', //数据发送方式  
  60.   
  61.             dataType:'json', //接受数据格式  
  62.   
  63.             data:params,   //要传递的数据  
  64.   
  65.             success:update_page  //回传函数(这里是函数名)  
  66.   
  67.             });  
  68.   
  69.        });  
  70.   
  71. });  
  72.   
  73. function update_page (json) { //回传函数实体,参数为XMLhttpRequest.responseText  
  74.   
  75.    var str="姓名:"+json.username+"<br />";  
  76.   
  77.    str+="年龄:"+json.age+"<br />";  
  78.   
  79.    str+="性别:"+json.sex+"<br />";  
  80.   
  81.    str+="工作:"+json.job;  
  82.   
  83.    $("#result").html(str);  
  84.   
  85. }  
  86.   
  87. //$.post()方式:  
  88.   
  89. $(function (){ //$(document).ready(function (){ 的简写  
  90.   
  91.    $('#test_post').click(function (){  
  92.   
  93.             $.post('ajax_test.php',  
  94.   
  95.             {username:$('#input1').val(),age:$('#input2').val(),sex:$('#input3').val(),job:$('#input4').val()},  
  96.   
  97.             function (data){ //回传函数  
  98.   
  99.             var myjson='';  
  100.   
  101.             eval('myjson='+data+';');  
  102.   
  103.             $('#result').html("姓名:"+myjson.username+"<br />工作:"+myjson['job']);  
  104.   
  105.             });  
  106.   
  107.    });  
  108.   
  109. });  
  110.   
  111. //$.get()方式:  
  112.   
  113. $(function (){  
  114.   
  115.       $('#test_get').click(function (){  
  116.   
  117.                   $.get('ajax_test.php',  
  118.   
  119.                   {username:$("#input1").val(),age:$("#input2").val(),sex:$("#input3").val(),job:$("#input4").val()},  
  120.   
  121.                   function   (data) {  
  122.   
  123.                         var myjson='';  
  124.   
  125.                         eval("myjson="+data+";");  
  126.   
  127.                         $("#result").html(myjson.job);  
  128.   
  129.                   });  
  130.   
  131.           });  
  132.   
  133. });  
  134.   
  135. </script>  
  136.   
  137.   
  138.   
  139. PHP代码:  
  140.   
  141. <?php  
  142.   
  143. $arr=<pre class="jscript" name="code">___FCKpd___0</pre>  
  144. POST; //若以$.get()方式发送数据,则要改成<pre class="jscript" name="code">___FCKpd___0</pre>  
  145. GET.或者干脆:<pre class="jscript" name="code">___FCKpd___0</pre>  
  146. REQUEST  
  147.   
  148. $myjson=json_encode($arr);   
  149.   
  150. echo $myjson;  
  151.   
  152. ?> 

转载于:https://www.cnblogs.com/lel1447/archive/2008/09/30/1302474.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值