- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title></title>
- <script src="//cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
- <script>
- function ajaxPost(){
- var formData = $("#myform").serialize();
- //serialize() 方法通过序列化表单值,创建 URL 编码文本字符串,这个是jquery提供的方法
- $.ajax({
- type:"post",
- url:"{:url('Index/index/test')}",
- data:formData,//这里data传递过去的是序列化以后的字符串
- success:function(data){
- $("#content").append(data);//获取成功以后输出返回值
- }
- });
- }
- </script>
- </head>
- <body>
- <form id="myform"><!--这里给表单起个id用于获取表单并序列化-->
- <input type="text" name="mess" />
- <input type="text" name="id" />
- <button onclick="ajaxPost()">---------</button>
- </form>
- <div id="content">
- </div>
- </body>
- </html>
其实跟正常的ajax没什么区别,主要就是利用jquery的serialize()方法序列化表单
中间遇到些麻烦就是还没熟悉tiinkphp5框架,之前一直用的3.2.3还没来得及,俩版本差别还是有的
一个是$_POST不能用了还有就是原来ajax的url可以使用框架的U方法没了具体看了看think下的助手函数发现是url
下边是随便写了个方法用于返回json数据
- public function test($mess,$id){
- if($mess == '123'){
- return json("ajax成功!".$mess."---".$id);
- }else{
- return json("你输出的是其他值:".$mess."---".$id);
- }
- }