首页 > 编程 > JavaScript > 正文

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

2019-11-19 13:48:17
字体:
来源:转载
供稿:网友

本文实例讲述了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:

<?phpheader("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程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表