vue.js實現(xiàn)的全選與全不選功能示例【基于elementui】
本文實例講述了vue.js實現(xiàn)的全選與全不選功能。分享給大家供大家參考,具體如下:
elementui是有checkbox組件,不過問題在于checkbox組件內(nèi)只能嵌套簡單的字符串,如果要嵌入標(biāo)簽怎么辦?
首先渲染頁面:
<el-checkbox v-model="checkAll" @change="handleCheckAllChange">全選</el-checkbox>
<tbody v-for="item in orderData">
<tr>
<td class="order-num" colspan="7">
<el-checkbox v-model="item.checkModel" @change="handleCheckItemChange" style="vertical-align:top;margin-top:20px;"></el-checkbox>
<div class="num">
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >訂單號:{{item.orderNumber}}</a>
<p>商戶單號:{{item.shopNumber}}</p>
</div>
</td>
<td class="order-action" colspan="2">
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >查看詳情</a>-<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >備注</a>-<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >加星</a>
</td>
</tr>
<tr>
<td>
<div class="pic">
<img :src=item.orderPic alt="">
</div>
<div class="info">
<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >{{item.name}}</a>
<p>{{item.size}}</p>
<p>商品來源:{{item.from}}</p>
</div>
</td>
<td>{{item.number}}</td>
<td>{{item.price}}</td>
<td>-</td>
<td>{{item.company}}</td>
<td>
<p>{{item.address}}</p>
<p>({{item.phone}})</p>
</td>
<td>{{item.date}}<br />{{item.time}}</td>
<td>{{item.state}}</td>
<td>{{item.pay}}<br /><span v-if="item.postCost">(運費:{{item.postCost}})</span></td>
</tr>
</tbody>
初始化data數(shù)據(jù):
checkAll:false,
checkedAllShops:[],
checkItemData:[],
orderData:[
{
checkModel:false,
orderNumber:'2017081618322542542',
shopNumber:'2017081618322542542',
orderPic:'../../../../static/images/realtimeprofile01.png',
name:'【商城】貼輕松穴位艾灸貼',
size:'5貼*盒',
from:'本店商品',
number:'10',
price:'200.00',
company:'蒂花之秀',
address:'童話鎮(zhèn)',
phone:'12345678910',
date:'2018-1-12',
time:'09:30:00',
state:'訂單關(guān)閉',
pay:'400.00',
postCost:'10'
},{
checkModel:false,
orderNumber:'2017081618322542542',
shopNumber:'2017081618322542542',
orderPic:'../../../../static/images/realtimeprofile01.png',
name:'【商城】貼輕松穴位艾灸貼',
size:'5貼*盒',
from:'本店商品',
number:'10',
price:'200.00',
company:'蒂花之秀',
address:'童話鎮(zhèn)',
phone:'12345678910',
date:'2018-1-12',
time:'09:30:00',
state:'訂單關(guān)閉',
pay:'400.00',
postCost:'10.00'
}
]
相關(guān)方法:
handleCheckAllChange(val){
this.orderData.map((item,i)=>{
item.checkModel = val;
})
},
handleCheckItemChange(val){
for(let i = 0,l = this.orderData.length;i < l;i ++){
if(this.orderData[i].checkModel !== val){
this.checkAll = false;
return;
}
}
this.checkAll = val;
}
css代碼就不貼出來了,不好看,哈哈
感興趣的朋友還可以使用本站如下在線工具測試運行效果:
在線HTML/CSS/JavaScript前端代碼調(diào)試運行工具:
http://tools.jb51.net/code/WebCodeRun
在線HTML/CSS/JavaScript代碼運行工具:
http://tools.jb51.net/code/HtmlJsRun
希望本文所述對大家vue.js程序設(shè)計有所幫助。
相關(guān)文章
vue實現(xiàn)input文本框只能輸入0-99的正整數(shù)問題
這篇文章主要介紹了vue實現(xiàn)input文本框只能輸入0-99的正整數(shù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10
Vue引入高德地圖并觸發(fā)實現(xiàn)多個標(biāo)點的示例詳解
這篇文章主要介紹了Vue引入高德地圖并觸發(fā)實現(xiàn)多個標(biāo)點,主要是在public下的index.html中引入地圖,引入組件設(shè)置寬高100%,本文通過示例代碼給大家介紹的非常詳細,需要的朋友可以參考下2022-05-05

