vue.js过滤器+ajax实现事件监听及后台php数据交互实例


Posted in Javascript onMay 22, 2018

本文实例讲述了vue.js过滤器+ajax实现事件监听及后台php数据交互。分享给大家供大家参考,具体如下:

在vue.js开发时,数据可以使用jquery和vue-resource来获取数据。在获取数据时,一定需要给一个数据初始值。

index.html:

<!doctype html>
<html lang="zh-CN">
<head>
 <meta charset="UTF-8">
 <title>
 vuejs 过滤器、ajax数据、嵌套循环、if判断、事件监听
 </title>
 <style type="text/css">
  [v-cloak] { display: none }
 </style>
</head>
<body>
 <div id="app">
  <button v-on:click="getData">ajax获取数据</button>
  <table>
   <tr>
    <td >id</td>
    <td >姓名</td>
    <td >手机号</td>
    <td >城市</td>
    <td >性别</td>
    <td >通过审核</td>
    <td >我的学生</td>
    <td >操作</td>
   </tr>
   <tr v-for="(item,index) in list ">
    <td>{{item.id}}</td>
    <td>{{item.name}}</td>
    <td>{{item.tel}}</td>
     <td>{{item.sex | sexFormat}}</td>
    <td>{{item.province}}_{{item.city}}</td>
    <td v-if="item.status==1">是</td>
    <td v-else-if="item.status==0">否</td>
    <td >
     <span v-for="stu in item.stu ">
     {{stu.name}},
     </span>
    </td>
    <td>
     <button v-on:click="edit">修改</button>
     <button v-on:click="del(index)">删除</button>
    </td>
   </tr>
  </table>
 </div>
</body>
<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js" charset="utf-8"></script>
<script src="https://cdn.bootcss.com/vue/2.3.0/vue.min.js" charset="utf-8"></script>
<script type="text/javascript">
$(function() {
 Vue.filter('sexFormat',function (value){
  if(value == 1){
   return "男";
  }
  else return "女";
 });
 new Vue({
  el: '#app',
  methods: {
   getData: function(){
     var url="json.php";
     var _self=this;
     $.get(url,function(data){
      _self.list=eval("(" + data +")");
     })
   },
   del:function(index){
    this.list.splice(index,1);
   },
   edit: function () {
    alert('修改')
   },
  },
  data: {
   "list":[{
    "id":"139",
    "name":"王五",
    "tel":"13681829898",
    "status":"1",
    "province":"省",
    "city":"市",
    "sex":"1",
    "stu":[{
     "id":"200",
     "name":"学生1",
     "tel":"13681829898",
    },{
     "id":"201",
     "name":"学生2",
     "tel":"13681829898",
    }],
   },
   {
    "id":"138",
    "name":"麻子",
    "tel":"13681829898",
    "status":"0",
    "province":"省",
    "city":"市",
    "sex":"0",
    "stu":[{
     "id":"300",
     "name":"学生31",
     "tel":"13681829898",
    },{
     "id":"301",
     "name":"学生32",
     "tel":"13681829898",
    }],
   },
   {
    "id":"137",
    "name":"丽丽",
    "tel":"15152882891",
    "status":"0",
    "province":"省",
    "city":"市",
    "sex":"1",
    "stu":[{
     "id":"400",
     "name":"学生41",
     "tel":"13681829898",
    },{
     "id":"401",
     "name":"学生42",
     "tel":"13681829898",
    }],
   },
   {
    "id":"136",
    "name":"娜娜",
    "tel":"15152882891",
    "status":"0",
    "province":"省",
    "city":"市",
    "sex":"0",
    "stu":[{
     "id":"500",
     "name":"学生51",
     "tel":"13681829898",
    },{
     "id":"501",
     "name":"学生52",
     "tel":"13681829898",
    }],
   }]
  }
 })
})
</script>
</html>

json.php:

<?php
header("Content-type:text/html;charset=utf-8");
for($i=1;$i<6;$i++){
 $data[]=array(
  'id'=>$i,
  'name'=>'test'.$i,
  'tel'=>'1368585789'.$i,
  'status'=>1,
  'province'=>'上海市',
  'city'=>'上海市',
  'sex'=>1,
  'stu'=>array(array('id'=>$i,'name'=>'stu'.$i,'tel'=>'1568585789')),
 );
}
echo json_encode($data);exit;

运行结果:

vue.js过滤器+ajax实现事件监听及后台php数据交互实例

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
js客户端快捷键管理类的较完整实现和应用
Jun 08 Javascript
js 遍历对象的属性的代码
Dec 29 Javascript
JS操作iframe里的dom(实例讲解)
Jan 29 Javascript
深入理解jquery中的事件与动画
May 24 Javascript
基于JavaScript Array数组方法(新手必看篇)
Aug 20 Javascript
Vue.js每天必学之构造器与生命周期
Sep 05 Javascript
node.js中cluster的使用教程
Jun 09 Javascript
angular5 子组件监听父组件传入值的变化方法
Sep 30 Javascript
layui 数据表格+分页+搜索+checkbox+缓存选中项数据的方法
Sep 21 Javascript
解决vue项目中页面调用数据 在数据加载完毕之前出现undefined问题
Nov 14 Javascript
学前端,css与javascript重难点浅析
Jun 11 Javascript
JavaScript undefined及null区别实例解析
Jul 21 Javascript
swiper 自动图片无限轮播实现代码
May 21 #Javascript
JS动态插入脚本和插入引用外部链接脚本的方法
May 21 #Javascript
通过jquery toggleClass()属性制作文章段落更改背景颜色
May 21 #jQuery
基于Vue的延迟加载插件vue-view-lazy
May 21 #Javascript
jQuery获取随机颜色的实例代码
May 21 #jQuery
JS实现常见的查找、排序、去重算法示例
May 21 #Javascript
vue组件jsx语法的具体使用
May 21 #Javascript
You might like
PHP实现多图片上传类实例
2014/07/26 PHP
php实现字符串首字母大写和单词首字母大写的方法
2015/03/14 PHP
Yii2表单事件之Ajax提交实现方法
2017/05/04 PHP
PHP针对伪静态的注入总结【附asp与Python相关代码】
2017/08/01 PHP
PHP autoload使用方法及步骤详解
2020/09/05 PHP
JavaScript实用技巧(一)
2010/08/16 Javascript
jQuery热气球动画半透明背景的后台登录界面代码分享
2015/08/28 Javascript
基于原生JS实现图片裁剪
2016/08/01 Javascript
web前端开发upload上传头像js示例代码
2016/10/22 Javascript
xmlplus组件设计系列之网格(DataGrid)(10)
2017/05/05 Javascript
JavaScript实现单击网页任意位置打开新窗口与关闭窗口的方法
2017/09/21 Javascript
jQuery进阶实践之利用最优雅的方式如何写ajax请求
2017/12/20 jQuery
微信小程序下拉刷新PullDownRefresh的使用方法
2018/11/29 Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
2019/09/13 Javascript
微信小程序实现星级评价
2019/11/20 Javascript
如何手动实现一个 JavaScript 模块执行器
2020/10/16 Javascript
[02:34]2016完美“圣”典风云人物:BurNIng专访
2016/12/10 DOTA
python单例模式实例分析
2015/04/08 Python
Python模块包中__init__.py文件功能分析
2016/06/14 Python
Python如何生成树形图案
2018/01/03 Python
python3调用R的示例代码
2018/02/23 Python
Python实现简单层次聚类算法以及可视化
2019/03/18 Python
Django的用户模块与权限系统的示例代码
2019/07/24 Python
CSS3实现水平居中、垂直居中、水平垂直居中的实例代码
2020/02/27 HTML / CSS
有关HTML5 Video对象的ontimeupdate事件(Chrome上无效)的问题
2013/07/19 HTML / CSS
台湾家适得:Homeget
2019/02/11 全球购物
飞利浦美国官网:Philips美国
2020/02/28 全球购物
如何为DataGridView添加一个定制的Column Type
2014/01/21 面试题
金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)-> (一千零一拾一元整)输出
2015/05/29 面试题
物流管理毕业生自荐信
2013/10/24 职场文书
大学生旅游业创业计划书
2014/01/29 职场文书
技能竞赛活动方案
2014/02/21 职场文书
诚信考试倡议书
2014/04/15 职场文书
2014年干部作风建设总结
2014/10/23 职场文书
出国留学导师推荐信
2015/03/26 职场文书
《和时间赛跑》读后感3篇
2019/12/16 职场文书