美文网首页vue集锦
vue如何获取自定义元素属性参数值

vue如何获取自定义元素属性参数值

作者: 幸运三片叶 | 来源:发表于2018-10-24 22:43 被阅读8次
    e.currentTarget.dataset.index;
    
    1. 获取dom节点 dataset数据

    有时候可能会陷入到DOM操作上面去,其实你应该关心的是数据传递,而不是操作DOM。如果你是想获取data-num的数据,可以这样写:

    <span @click="getData($event,'21')">55</span> 
    getData:function (e,num) { console.log(num)}
    

    这样就可以取到这个值了,如果你是确实想操作DOM,那你可以这样写:

    <span data-num="21" ref="dataNum" @click="getData($event)">55</span> 
    getData:function (e) { console.log(this.$refs.dataNum.dataset.num); }
    
    clipboard.png
    1. 通过 e.target.getAttribute
    <div id="app">
         <span data-num="21" @click="getData($event)">55</span>
    </div>
    
    new Vue({
       el:'#app',
       methods:{
       getData:function (e) {
           console.log(e.target.getAttribute('data-num'))
        }
     }
    });
    

    3.自定义命名

    如:html
    <div class="live-dd" numId = "<{$item.id}>"></div>

    js:

    $('.live-dd').on("click",function(){
         var num = this.getAttribute('numId');location.href='/live/info?id='+num;
    });
    

    使用jq的方法

    <span class="vk_cq5" classid="<{$smarty.get.id}>">
    
    var live_id = $('.vk_cq5').attr('classid')
    
        ref的用法  相当于操作dom
    

    html :

    1.  <div>  
    2.  <div id="box" ref="mybox">  
    3.  DEMO  
    4.  </div>  
    5.  </div>
    
    js:
    
    1.  export default {  
    2.  data () {  
    3.  return {  
    
    5.  }  
    6.  },  
    7.  mounted () {  
    8.  this.init();  
    9.  },  
    10.  methods:{  
    11.  init() {  
    12.  const self = this;  
    13.  this.$refs.mybox.style.color = 'red';  
    14.  setTimeout(() => {  
    15.  self.$refs.mybox.style.color = 'blue';  
    16.  },2000)  
    17.  }  
    18.  }  
    
    20.  }
    

    相关文章

      网友评论

        本文标题:vue如何获取自定义元素属性参数值

        本文链接:https://www.haomeiwen.com/subject/fcsftqtx.html