vuejs checkbox all
by santhosh lanka
HTML
<script src="https://unpkg.com/vue@next/dist/vue.js"></script>
<script src="https://unpkg.com/[email protected]/dist/vue.min.js"></script>
<div id="app">
<h4>User</h4>
<div>
<table>
<tr>
<th><input type="checkbox" v-model="selectAll"></th>
<th align="left">Name</th>
</tr>
<tr v-for="user in users">
<td>
<input type="checkbox" v-model="selected" :value="user.id" number>
</td>
<td>{{ user.name }}</td>
</tr>
</table>
{{selected}}
</div>
</div>
JavaScript
new Vue({
el: '#app',
data: {
users: [
{ "id": "1", "name": "Shad Jast", "email": "[email protected]" },
{ "id": "2", "name": "Duane Metz", "email": "[email protected]" },
{ "id": "3", "name": "Myah Kris", "email": "[email protected]" },
{ "id": "4", "name": "Dr. Kamron Wunsch", "email": "[email protected]" }
],
selected: []
},
computed: {
selectAll: {
get: function () {
return this.users ? this.selected.length == this.users.length : false;
},
set: function (value) {
var selected = [];
if (value) {
this.users.forEach(function (user) {
selected.push(user.id);
});
}
this.selected = selected;
}
}
}
});