这篇文章给大家分享的是有关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> <p id="content"> </p> </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;
感谢各位的阅读!关于“thinkPHP5中如何实现ajax提交表单”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。