当前位置:首页 > PHP教程 > PHP常见问题

thinkPHP5 ajax提交表单操作实例分析

本文实例讲述了thinkphp5 ajax提交表单操作。分享给大家供大家参考,具体如下:

<!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()方法序列化表单

中间遇到些麻烦就是还没熟悉thinkphp5框架,之前一直用的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); } }

此外,常规的参数提交与处理方法如下:

表单提交传参:

<input type="hidden" name="project_name" value="$project_name"/>

在控制器中获取

$project_name=input("post.project_name");

php中跳转传参:

$this->success('新增项目成功',url("version/index",array('project_name'=>$project_name))); die;

更多关于thinkphp相关内容感兴趣的读者可查看本站专题:《thinkphp入门教程》、《thinkphp模板操作技巧总结》、《thinkphp常用方法总结》、《codeigniter入门教程》、《ci(codeigniter)框架进阶教程》、《zend framework框架入门教程》及《php模板技术总结》。

希望本文所述对大家基于thinkphp框架的php程序设计有所帮助。



【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!