php使用ajax无刷新从接口获取数据更新填充表单
- 2017-05-17 16:40:37
- 开发
- 44
- shevechco
这几天再写一个网站的数据抓取功能,改好了将一部分记录下,使用的thinkphp框架写的,直接上干货代码参考
在Index控制内添加一个获取数据的方法(这里仅做参考,直接将获取的数据写成数组,中间过程省略......):
public function dbinfo(){ $data = array("name","pass"); $dbinfo = json_encode($data); echo $dbinfo; }
模版内容如下:
<form> <input type="button" id="btn" value="获取" /><br /> <input type="text" id="title" name="name" value="" /><br /> </form> <script type="text/javascript"> $(function(){ $("#btn").click(function(){ $.get("{:U('Index/dbinfo')}", function(data){ //alert(data); var arr = eval(data); //alert(arr[0]); $("#title").val(arr[0]); }); }); }); </script>
写的很简单,没有带参数,如果需要带参数在$.get的括号内写上,例如&catid=1&id=1,就在提交的地址后面加上,“, { catid:1 , id:1}”
js代码就改为:
<script type="text/javascript"> $(function(){ $("#btn").click(function(){ $.get("{:U('Index/dbinfo')}", { catid:1 , id:1}, function(data){ //alert(data); var arr = eval(data); //alert(arr[0]); $("#title").val(arr[0]); }); }); }); </script>
从控制器上返回接口json数据不要用return而是需要使用echo,js方法下的返回data数据需要使用eval方法把数据转换为js的数组。
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:http://www.sulao.cn/post/371
相关推荐
- docker部署php以后追加编译扩展模块的方法
- docker-compose编排lnmp(nginx+php+mysql)环境
- Centos7下编译安装lnmp环境(nginx1.18.0+mysql5.7.44+php7.4.33)
- ThinkPHP5中raw的作用
- ThinkPHP使用Layui实现下拉加载
- Thinkphp5使用Layui实现文件异步上传的方法
- phpcms二次开发增加分词百度分词接口功能
- 使用ajax来对后台主框架进行布局(非iframe方式)
- ThinkPHP操作MongoDB排序关于最大使用32M内存报错的解决方案
- php使用curl方法获取登录状态session_id