Vue.js實現(xiàn)的表格增加刪除demo示例
本文實例講述了Vue.js實現(xiàn)的表格增加刪除demo。分享給大家供大家參考,具體如下:
Vue.js是當下很火的一個JavaScript MVVM庫,它是以數(shù)據(jù)驅動和組件化的思想構建的。相比于Angular.js,Vue.js提供了更加簡潔、更易于理解的API,使得我們能夠快速地上手并使用Vue.js。
使用本站在線HTML/CSS/JavaScript代碼運行工具http://tools.jb51.net/code/HtmlJsRun,得到如下所示的運行效果:

具體代碼如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Vue.js小demo</title>
<link rel="stylesheet" rel="external nofollow" >
<style>
label{float:left;line-height: 34px;}
.panel-body{
margin:30px auto;
}
</style>
</head>
<body>
<!-- 這是我們的view -->
<div class="col-md-6">
<div class="panel panel-default" id="app" >
<div class="panel-body">
<div class="form-group">
<label class="col-md-2 control-label">Name:</label>
<input type="text" class="col-md-9 form-control" v-model="newPerson.name"/>
</div>
<div class="form-group">
<label class="col-md-2 control-label">Age:</label>
<input type="text" class="col-md-9 form-control" v-model="newPerson.age">
</div>
<div class="form-group">
<label class="col-md-2 control-label">Sex:</label>
<select class="col-md-9 form-control" v-model="newPerson.sex">
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
</div>
<div class="form-group">
<label class="col-md-8"></label>
<button class="col-md-3" @click="createPerson">Create</button>
</div>
</div>
<div class="panel-body">
<table class="table text-center">
<thead>
<tr >
<th class="text-center">Name</th>
<th class="text-center">Age</th>
<th class="text-center">Sex</th>
<th class="text-center">Delete</th>
</tr>
</thead>
<tbody>
<tr v-for="person in people">
<td>{{ person.name }}</td>
<td>{{ person.age }}</td>
<td>{{ person.sex }}</td>
<td><button v-on:click="delPerson($index)">Delete</button></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</body>
<script src="https://cdn.bootcss.com/vue/2.2.6/vue.js"></script>
<script>
//創(chuàng)建一個Vue實例或"ViewModel",它連接view與model
var vm = new Vue({
el: '#app',
data: {
newPerson: {
name: '',
age: '',
sex: 'Male'
},
people: [{
name: 'Jack',
age: 30,
sex: 'Male'
}, {
name: 'Bill',
age: 26,
sex: 'Male'
}, {
name: 'Tracy',
age: 22,
sex: 'Female'
}, {
name: 'Chris',
age: 36,
sex: 'Male'
}]
},
methods:{
createPerson: function(){
this.people.push(this.newPerson);
// 添加完newPerson對象后,重置newPerson對象
this.newPerson = {name: '', age: '', sex: 'Male'}
},
delPerson: function(index){
// 刪一個數(shù)組元素
this.people.splice(index,1);
}
}
});
</script>
</html>
希望本文所述對大家vue.js程序設計有所幫助。
相關文章
vue+ElementPlus框架Container 布局容器不能鋪滿整個屏幕的解決方案
這篇文章主要介紹了vue+ElementPlus框架Container 布局容器不能鋪滿整個屏幕的解決方案,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2024-01-01
在vue-cli 3中給stylus、sass樣式傳入共享的全局變量
這篇文章主要介紹了在vue-cli 3中, 給stylus、sass樣式傳入共享的全局變量,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-08-08
vuex中store.commit和store.dispatch的區(qū)別及使用方法
這篇文章主要介紹了vuex中store.commit和store.dispatch的區(qū)別及使用方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01

