本文实例讲述了thinkPHP5 ajax提交表单操作。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
<!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数据
1
2
3
4
5
6
7
|
public function test( $mess , $id ){ if ( $mess == '123' ){ return json( "ajax成功!" . $mess . "---" . $id ); } else { return json( "你输出的是其他值:" . $mess . "---" . $id ); } } |
此外,常规的参数提交与处理方法如下:
表单提交传参:
1
|
< input type = "hidden" name = "project_name" value = "$project_name" /> |
在控制器中获取
1
|
$project_name =input( "post.project_name" ); |
php中跳转传参:
1
2
|
$this ->success( '新增项目成功' ,url( "Version/index" , array ( 'project_name' => $project_name ))); die ; |
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
原文链接:http://blog.csdn.net/haibo0668/article/details/78085354