TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结

2025-05-29 0 61

本文实例讲述了TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法。分享给大家供大家参考,具体如下:

方法一: serialize() 方法通过序列化表单值,创建 URL 编码文本字符串,这个是jquery提供的方法

前端代码

?

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

32

33

34
<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>ajax交互</title>

<script src="//cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>

<script>

$('.but').click(function () {

var formData = $("#myform").serialize();//formData值:account=sdf&passwd=sdf

//serialize() 方法通过序列化表单值,创建 URL 编码文本字符串,这个是jquery提供的方法

$.ajax({

type: "post",

url: "{:url('index/index/reg')}", //数据传输的控制器方法

data: formData,//这里data传递过去的是序列化以后的字符串

success: function (data) {

console.log(data);

$("#content").append(data);//获取成功以后输出返回值

}

});

return false;

})

</script>

</head>

<body>

<form id="myform">

<!--这里给表单起个id用于获取表单并序列化-->

<input type="text" name="account" />

<input type="password" name="passwd" />

<input type="button" value="提交" class="but">

</form>

<div id="content">

</div>

</body>

</html>

后端代码

?

1

2

3

4

5

6

7
public function reg($account,$passwd){

if($account == '123'){

return json("ajax成功!".$account."---".$passwd);

}else{

return json("你输出的是其他值:".$account."---".$passwd);

}

}

方法二: 利用layui的form.on事件监听

前端代码

?

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

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58
<!doctype html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>管理员登录</title>

<meta name="renderer" content="webkit|ie-comp|ie-stand">

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

<meta name="viewport"

content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">

<meta http-equiv="Cache-Control" content="no-siteapp"/>

<link rel="shortcut icon" href="./favicon.ico" rel="external nofollow" type="image/x-icon"/>

<link rel="stylesheet" href="./static/css/font.css" rel="external nofollow" >

<link rel="stylesheet" href="./static/css/weadmin.css" rel="external nofollow" >

<script src="./lib/layui/layui.js" charset="utf-8"></script>

</head>

<body class="login-bg">

<div class="login">

<div class="message">管理登录</div>

<div id="darkbannerwrap"></div>

<form method="post" class="layui-form">

<input name="username" placeholder="用户名" type="text" lay-verify="required" class="layui-input">

<hr class="hr15">

<input name="password" lay-verify="required" placeholder="密码" type="password" class="layui-input">

<hr class="hr15">

<input class="loginin" value="登录" lay-submit lay-filter="login" style="width:100%;" type="submit">

<hr class="hr20">

</form>

</div>

<script src="./static/js/jquery-3.3.1.min.js"></script>

<script type="text/javascript">

layui.extend({

admin: '{/}./static/js/admin'

});

//layui.use调用模块

layui.use(['form', 'admin'], function () {

//获得form模块

var form = layui.form

, admin = layui.admin;

//监听提交

//事件监听

//语法:form.on('event(过滤器值)', callback);(过滤器值指lay-filter="过滤器值")

//function(data)里的data是一个object,data.field是表单填写的内容

form.on('submit(login)', function (data) {

//$.post写法:$(selector).post(URL,data,function(data,status,xhr),dataType)

var post_data = data.field;

$.post("{:url('verify')}"

, post_data

, function (data) {

console.log(data);

}

)

return false;

});

})

;

</script>

<!-- 底部结束 -->

</body>

后端代码

?

1

2

3

4

5
public function verify()

{

$posts = input("post.password");

return json($posts);

}

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

原文链接:https://blog.csdn.net/coco1118/article/details/83926730

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结 https://www.kuaiidc.com/104980.html

相关文章

发表评论
暂无评论