关于TP5的ajax写法

 
 
[html]  view plain  copy
  1. <!DOCTYPE html>    
  2. <html>    
  3.     <head>    
  4.         <meta charset="UTF-8">    
  5.         <title></title>    
  6.         <script src="//cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>    
  7.         <script>    
  8.                 
  9.             function ajaxPost(){    
  10.                 var formData = $("#myform").serialize();    
  11.                 //serialize() 方法通过序列化表单值,创建 URL 编码文本字符串,这个是jquery提供的方法    
  12.                 $.ajax({    
  13.                     type:"post",    
  14.                     url:"{:url('Index/index/test')}",    
  15.                     data:formData,//这里data传递过去的是序列化以后的字符串    
  16.                     success:function(data){    
  17.                         $("#content").append(data);//获取成功以后输出返回值    
  18.                     }    
  19.                 });    
  20.             }    
  21.                 
  22.         </script>    
  23.     </head>    
  24.     <body>    
  25.             
  26.         <form id="myform"><!--这里给表单起个id用于获取表单并序列化-->    
  27.             <input type="text" name="mess" />    
  28.             <input type="text" name="id" />    
  29.             <button onclick="ajaxPost()">---------</button>    
  30.         </form>    
  31.         <div id="content">    
  32.                 
  33.         </div>    
  34.     </body>    
  35. </html>    


其实跟正常的ajax没什么区别,主要就是利用jquery的serialize()方法序列化表单

中间遇到些麻烦就是还没熟悉tiinkphp5框架,之前一直用的3.2.3还没来得及,俩版本差别还是有的
一个是$_POST不能用了还有就是原来ajax的url可以使用框架的U方法没了具体看了看think下的助手函数发现是url
下边是随便写了个方法用于返回json数据

[html]  view plain  copy
  1. public function test($mess,$id){    
  2.         if($mess == '123'){    
  3.             return json("ajax成功!".$mess."---".$id);    
  4.         }else{    
  5.             return json("你输出的是其他值:".$mess."---".$id);    
  6.         }    
  7.     }    

猜你喜欢

转载自blog.csdn.net/fly_on_the_sky/article/details/79376226
tp5