您好,登錄后才能下訂單哦!
這篇文章給大家介紹怎么在Vue.js中利用checkbox實現一個全選反選效果,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
html示例代碼
<template> <div> <input type='checkbox' class='input-checkbox' v-model='checked' v-on:click='checkedAll'>全選 <template v-for='checkb in checkboxData'> <input type='checkbox' name='checkboxinput' class='input-checkbox' v-model='checkboxModel' value='{{checkb.id}}'>{{checkb.value}} </template> </div> </template>
js示例代碼
<script> export default { methods:{ checkedAll: function() { var _this = this; console.log(_this.checkboxModel); if (this.checked) {//實現反選 _this.checkboxModel = []; }else{//實現全選 _this.checkboxModel = []; _this.checkboxData.forEach(function(item) { _this.checkboxModel.push(item.id); }); } } }, watch: {//深度 watcher 'checkboxModel': { handler: function (val, oldVal) { if (this.checkboxModel.length === this.checkboxData.length) { this.checked=true; }else{ this.checked=false; } }, deep: true } }, data () { return { checkboxData:[{ id:'1', value:'蘋果' },{ id:'2', value:'荔枝' },{ id:'3', value:'香蕉' },{ id:'4', value:'火龍果' }], checkboxModel:['1','3','4'], checked:"" } } } </script>
watch
類型: Object
詳細:
一個對象,鍵是觀察表達式,值是對應回調。值也可以是方法名,或者是對象,包含選項。在實例化時為每個鍵調用 $watch()
。
示例:
var vm = new Vue({ data: { a: 1 }, watch: { 'a': function (val, oldVal) { console.log('new: %s, old: %s', val, oldVal) }, // 方法名 'b': 'someMethod', // 深度 watcher 'c': { handler: function (val, oldVal) { /* ... */ }, deep: true } } }) vm.a = 2 // -> new: 2, old: 1
關于怎么在Vue.js中利用checkbox實現一個全選反選效果就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。