阻止復選框默認冒泡事件


<input  type="checkbox"  v-on:click.prevent="onClick"  />

 數組渲染因為下標問題,導致點上一個復選框拿走數據之后,下一個數據的復選框狀態會改變,所以通過prevent去阻止事件的冒泡。讓復選框依然是數據的原本狀態,這是第一種解決辦法。

第二種解決辦法就是直接找到checked重新改成true狀態

<template>
      <div v-for="(item,index) in list"  :key="index">
            <input type="checkbox" :checked="item.state" v-on:click="onClick(index)" />
      </div>
<template/>
<script>
    export default{
     data(){
          return{
             list:[
                  {id:1,state:true},
                  {id:2,state:true},
                  {id:1,state:true},
                  {id:1,state:true}
                  ]
           }
        },
     methods:{
          onClick(i){
              this.list.splice(i,1);
             //通過event 找到狀態重新改成原來的true
              window.event.target.checked=true;
           }
        }
        }
</script>
    

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM