이 기사의 예에서는 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); } }
또한 기존의 매개변수 제출 및 처리 방법은 다음과 같습니다.
Form 제출 매개변수 전달:
<input type="hidden" name="project_name" value="$project_name"/>
Get in the Controller
$project_name=input("post.project_name");
PHP로 점프 전송 참조:
$this->success('新增项目成功',url("Version/index",array('project_name'=>$project_name))); die;
관련 학습 권장 사항: thinkphp
위 내용은 thinkPHP5 ajax 양식 제출 작업 예제 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!