使用vue点击li,获取当前点击li父辈元素的属性值方法


Posted in Javascript onSeptember 12, 2018

vue实现加载并展示后台数据的tab选项卡

vue用于渲染页面

jquery用于方法实现动态效果

<div class="content">
	
	<!-- change方法, 数值改变触发 -->
	<select v-on:change="getData()" name="" id="dataSelect">
		<option value="" v-bind:name="index" v-for="(value, index) in items">{{value.date}}</option>
	</select>			
 
 
	<!-- 为name属性添加当前索引值 -->
	<ul v-on:click="toFlow($event)" v-bind:name="i" class="flowData" v-for="(flow, i) in flows">
		<li class="li1">
			{{flow.name.fullName}}<br>
			{{flow.name.time}}
		</li>	
		<li class="li2">
			{{flow.val1}}
		</li>
		<li class="li3">
			{{flow.val2}}
		</li>
		<li class="li4">
			{{flow.val3}}
		</li>			
	</ul>		
 
</div>
<script>
	var vm = new Vue({
		el: "#app",
		data: {
			user: {},
			items: [],
			flows: []
		},
		methods: {
			// 根据option数值替换数据
			getData: function() {
				var optionIndex = $('#dataSelect option:selected').attr("name"); //选中的值
				vm.flows = vm.items[optionIndex].flowsMonth;
			},
			toFlow: function(event) {
				// 点击li获取当前li父辈ul的name属性值
				var flowIndex = event.target.parentNode.getAttribute("name");
				var flow = (vm.flows[flowIndex]);
				$.ajax({
					url: 'php/test.php',
					type: 'POST',
					dataType: "json",
					data: {
						flow: flow
					},
					success: function(data) {
						console.log(data);
					}
				})	
			}
		}
	})
 
	$(function(){
		$.ajax({
			url: 'json/items.json',
			type: 'GET',
			dataType: "json",
			success: function(data) {
				vm.user = data.user;
				vm.items = data.flows;
				// 初始数据
				vm.flows = vm.items[0].flowsMonth;
			}
		})	
	})
</script>
{
	"flows": [
		{
			"date": "2017年5月",
			"flowsMonth": [
				{
					"name": {
						"fullName": "xxx 10G",
						"time": "当月有效"
					},
					"val1": "200",
					"val2": "1.3",
					"val3": "2300"
				},
				{
					"name": {
						"fullName": "xxx 10G",
						"time": "当月有效"
					},
					"val1": "1",
					"val2": "2",
					"val3": "3"
				},
				{
					"name": {
						"fullName": "xxx 10G",
						"time": "当月有效"
					},
					"val1": "1",
					"val2": "2",
					"val3": "3"
				}
			]
		},
		{
			"date": "2017年6月",
			"flowsMonth": [
				{
					"name": {
						"fullName": "xxx 10G",
						"time": "当月有效"
					},
					"val1": "200",
					"val2": "1.3",
					"val3": "2300"
				},
				{
					"name": {
						"fullName": "xxx 10G",
						"time": "当月有效"
					},
					"val1": "1",
					"val2": "22",
					"val3": "33"
				},
				{
					"name": {
						"fullName": "xxx 10G",
						"time": "当月有效"
					},
					"val1": "12",
					"val2": "32",
					"val3": "13"
				}
			]
		}
		,
		{
			"date": "2017年8月",
			"flowsMonth": [
				{
					"name": {
						"fullName": "xxx 10G",
						"time": "当月有效"
					},
					"val1": "200",
					"val2": "1.3",
					"val3": "2300"
				},
				{
					"name": {
						"fullName": "xxx 10G",
						"time": "当月有效"
					},
					"val1": "61",
					"val2": "542",
					"val3": "63"
				},
				{
					"name": {
						"fullName": "xxx 10G",
						"time": "当月有效"
					},
					"val1": "51",
					"val2": "22",
					"val3": "34"
				}
			]
		}
	]
}

以上这篇使用vue点击li,获取当前点击li父辈元素的属性值方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
cument.execCommand()用法深入理解
Dec 04 Javascript
学习Bootstrap组件之下拉菜单
Jul 28 Javascript
详解javascript数组去重问题
Nov 06 Javascript
Bootstrap学习笔记之js组件(4)
Jun 12 Javascript
使用ajaxfileupload.js实现上传文件功能
Aug 13 Javascript
javascript+html5+css3自定义提示窗口
Jun 21 Javascript
分享19个JavaScript 有用的简写写法
Jul 07 Javascript
Three.js基础学习教程
Nov 16 Javascript
JS扁平化输出数组的2种方法解析
Sep 17 Javascript
vue.js click点击事件获取当前元素对象的操作
Aug 07 Javascript
详解为什么Vue中的v-if和v-for不建议一起用
Jan 13 Vue.js
vue cli4中mockjs在dev环境和build环境的配置详情
Apr 06 Vue.js
在Vue中获取组件声明时的name属性方法
Sep 12 #Javascript
浅谈webpack4 图片处理汇总
Sep 12 #Javascript
vue二级菜单导航点击选中事件的方法
Sep 12 #Javascript
vue this.reload 方法 配置
Sep 12 #Javascript
jquery 动态遍历select 赋值的实例
Sep 12 #jQuery
JS中判断字符串存在和非空的方法
Sep 12 #Javascript
React router动态加载组件之适配器模式的应用详解
Sep 12 #Javascript
You might like
PHP小技巧之函数重载
2014/06/02 PHP
php将金额数字转化为中文大写
2015/07/09 PHP
屏蔽script注入小例子
2013/11/12 Javascript
js和jquery中循环的退出和继续学习记录
2014/09/06 Javascript
JavaScript实现获得所有兄弟节点的方法
2015/07/23 Javascript
JavaScript设置、获取、清除单值和多值cookie的方法
2015/11/17 Javascript
javaScript知识点总结(必看篇)
2016/06/10 Javascript
第一次动手实现bootstrap table分页效果
2016/09/22 Javascript
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
详解使用create-react-app添加css modules、sasss和antd
2018/07/31 Javascript
React+Webpack快速上手指南(小结)
2018/08/15 Javascript
Vue.js组件实现选项卡以及切换特效
2019/07/24 Javascript
vue webpack build资源相对路径的问题及解决方法
2020/06/04 Javascript
vue 数据双向绑定的实现方法
2021/03/04 Vue.js
python实现2014火车票查询代码分享
2014/01/10 Python
python判断给定的字符串是否是有效日期的方法
2015/05/13 Python
Python程序中的观察者模式结构编写示例
2016/05/27 Python
python SSH模块登录,远程机执行shell命令实例解析
2018/01/12 Python
Flask框架WTForm表单用法示例
2018/07/20 Python
python实现三维拟合的方法
2018/12/29 Python
python实现简单日期工具类
2019/04/24 Python
python中数组和矩阵乘法及使用总结(推荐)
2019/05/18 Python
django基础学习之send_mail功能
2019/08/07 Python
基于Python中isfile函数和isdir函数使用详解
2019/11/29 Python
Python semaphore evevt生产者消费者模型原理解析
2020/03/18 Python
浅谈keras使用预训练模型vgg16分类,损失和准确度不变
2020/07/02 Python
CSS3实例分享--超炫checkbox复选框和radio单选框
2014/09/01 HTML / CSS
Baby Tulai澳大利亚:美国婴儿背带品牌
2018/10/15 全球购物
为什么如下的代码int a=100,b=100;long int c=a * b;不能工作
2013/11/29 面试题
秋季运动会稿件
2014/01/30 职场文书
80后职场人的职业生涯规划
2014/03/08 职场文书
工商管理本科生求职信
2014/07/13 职场文书
敬业奉献模范事迹材料
2014/12/24 职场文书
创业计划书之废品回收
2019/09/26 职场文书
读《皮囊》有感:理解是对他人的最大的善举
2019/11/14 职场文书
详解Mysql和Oracle之间的误区
2021/05/18 MySQL