vue做一个简单的图书管理实现增删功能

html部分

<!DOCTYPE html>

 <html>

     <head>

         <meta charset="UTF-8">

         <title>Document</title>

          <link rel="stylesheet" type="text/css" href="css/bootstrap.css"/>

         <script src="vue.js"></script>

         <style type="text/css">

             #update-book{

                 display: none;

             }

         </style>

     </head>

      <body>

         <div class="container">

             <div class="col-md-6 col-md-offset-3">

                 <div id="app">

                     <table class="table table-hover ">

                         <br />

                         <thead>

                             <tr>

                                 <th>序号</th>

                                 <th>书名</th>

                                 <th>作者</th>

                                 <th>价格</th>

                                 <th>操作</th>

                             </tr>

                         </thead>

                         <tbody>

                             <tr v-for="book in filterBooks">

                                 <td>{{book.id}}</td>

                                 <td>{{book.name}}</td>

                                 <td>{{book.author}}</td>

                                 <td>{{book.price}}</td>

                                 <template v-if="book.id%2==0">

                                     <td class="text-left">

                                         <button type="button" class="btn btn-success" class="del" @click="delBook(book)">删除</button>

                                         <button type="button" class="btn btn-success" @click="updataBook(book)">修改</button>

                                     </td>

                                 </template>

                                 <template v-else>

                                     <td class="text-left">

                                         <button type="button" class="btn btn-danger" class="del" @click="delBook(book)">删除</button>

                                         <button type="button" class="btn btn-danger" @click="updataBook(book)">修改</button>

                                     </td>

                                 </template>

                             </tr>

                         </tbody>

                     </table>

                     <div id="add-book">

                         <div class="row" style="margin-bottom: 30px;">

                             <div class="col-md-3"style="text-align: right;font-size: 16px;line-height: 30px;">

                                 请输入书名

                             </div>

                             <div class="col-md-5">

                                 <input type="text"class="form-control" v-model="search"/>

                             </div>

                         </div>

                         <h3>添加书籍</h3>

                         <hr />

                         <div class="form-group">

                             <label for="group">书名</label>

                             <input type="text" class="form-control" id="group" v-model="book.name">

                         </div>

                         <div class="form-group">

                             <label for="author">作者</label>

                             <input type="text" class="form-control" id="author" v-model="book.author">

                         </div>

                         <div class="form-group">

                             <label for="price">价格</label>

                             <input type="text" class="form-control" id="price" v-model="book.price">

                         </div>

                         <button class="btn btn-primary btn-block" v-on:click="addBook()">添加</button>

                     </div>

                     <div id="update-book">

                         <h3>修改书籍</h3>

                         <hr />

                         <div class="form-group">

                             <label for="group1">书名</label>

                             <input type="text" class="form-control" id="group1" v-model="book.name">

                         </div>

                         <div class="form-group">

                             <label for="author1">作者</label>

                             <input type="text" class="form-control" id="author1" v-model="book.author">

                         </div>

                         <div class="form-group">

                             <label for="price1">价格</label>

                             <input type="text" class="form-control" id="price1" v-model="book.price">

                         </div>

                         <button class="btn btn-primary btn-block" @click="updatasBook()">完成</button>

                     </div>

                 </div>

             </div>

         </div>

       </body>

</html>

script部分

<script>

        var id=0;

            new Vue({

                el:'#app',

                methods:{

                    addBook:function(){

                        this.book.id=this.books.length+1;

                        this.books.push(this.book);

                        this.book={};

                    },

                    delBook:function(book){

                    var blength=this.books.length;

                    this.books.splice(book.id-1,1);

                        for(var i=0;i<blength;i++){

                            if(book.id<this.books[i].id){

                                this.books[i].id-=1;

                            }

                        }

                },

                    updataBook:function(book){

                        $("#add-book").css("display","none");

                        $("#update-book").css("display","block");

                        id=book.id;

                    },

                    updatasBook:function(){

                        this.book.id=id;

                        this.books.splice(id-1,1,this.book);

                        $("#add-book").css("display","block");

                        $("#update-book").css("display","none");

                        this.book = {};

                    },

                },

                computed:{

                    filterBooks:function(){

                        var books=this.books;

                        var search=this.search;

           

                        return books.filter(function(book){

                            return book.name.toLowerCase().indexOf(search.toLowerCase())!=-1;

                        })

                    }

                },

                    data:{

                    book:{

                        id:"",

                        author:"",

                        name:"",

                        price:""

                    },

                    books:[{

                        id:1,

                        author:"张三",

                        name:"张三自传漫画",

                        price:12.0

                    },

                    {

                        id:2,

                        author:"李四",

                        name:"李四自传漫画",

                        price:12.0

                    },

                    {

                        id:3,

                        author:"张三",

                        name:"张三自传漫画",

                        price:12.0

                    }

                    ],

                    search:""

                }

           

            })</script>

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值