国产精品美女久久久浪潮AV,国产精品三级一二三区,久久精品国产一区二区小说 ,依依成人影视国产精品,全部无卡免费的毛片在线看,日本一区二区三深夜不卡,国产精品女同一区二区久久,国产精品夜色一区二区三区

        ElementUI表格中獲取當(dāng)前行數(shù)據(jù)(實現(xiàn)對table數(shù)據(jù)的修改和刪除)

        2019-5-23    seo達人

        如果您想訂閱本博客內(nèi)容,每天自動發(fā)到

        前言

        在此之前,已經(jīng)實現(xiàn)了vue+ElementUI的跨域查詢并渲染查詢結(jié)果的功能,現(xiàn)在想要在每一行中添加修改和刪除的按鈕。于是乎就需要獲取當(dāng)前行的數(shù)據(jù),于是就有了下面兩種方式的獲取。


        1 獲取當(dāng)前行的數(shù)據(jù)

        1.1 我的笨辦法

        這里是我記錄自己的學(xué)習(xí)過程,這個方法也能實現(xiàn),但是麻煩,如果您只是為了尋找最終方案,請直接查看1.2章節(jié)。

        首先我查看了官方文檔,打算使用對話框來渲染修改頁面和刪除警告頁面。這個實現(xiàn)起來很簡單,就是對按鈕綁定一個click事件,然后控制對話框的顯示和隱藏:


        <el-table @row-click="handleEdit" :data="dengmiQueryForm.list" stripe border width="100%" height="350">

        <el-table-column prop="mimian" label="謎面" width="300" fixed="left">

        </el-table-column>

        <el-table-column prop="dengmiSeq" label="序號">

        </el-table-column>

        <el-table-column prop="mimu" label="謎目">

        </el-table-column>

        <el-table-column prop="mige" label="謎格">

        </el-table-column>

        <el-table-column prop="midi" label="謎底">

        </el-table-column>

        <el-table-column prop="zuozhe" label="作者">

        </el-table-column>

        <el-table-column prop="mizhu" label="注">

        </el-table-column>

        <el-table-column prop="shangxi" label="賞析">

        </el-table-column>

        <el-table-column prop="leixing" label="類型">

        </el-table-column>

        <el-table-column label="操作" fixed="right" width="200px">

        <el-col :span="10">

        <el-tooltip effect="dark" content="編輯當(dāng)前行" placement="top">

        <el-button size="mini" @click="dengmiQueryForm.dialogVisible = true">編輯</el-button>

        </el-tooltip>

        </el-col>

        </el-table-column>

        </el-table>

        <div style="margin-top: 5px;"></div><!--這個只是為了在頁面上顯示間隔-->

        <el-dialog title="編輯燈謎" :visible.sync="dengmiQueryForm.dialogVisible">

        <el-form :model="modifyForm">

        <el-form-item label="謎面" :label-width="modifyForm.formLabelWidth">

        <el-input v-model="modifyForm.mimian" auto-complete="off"></el-input>

        </el-form-item>

        <el-form-item label="謎目" :label-width="modifyForm.formLabelWidth">

        <el-input v-model="modifyForm.mimu" auto-complete="off"></el-input>

        </el-form-item>

        </el-form>

        <div slot="footer" class="dialog-footer">

        <el-button @click="dengmiQueryForm.dialogVisible = false">取 消</el-button>

        <el-button type="primary" @click="dengmiQueryForm.dialogVisible = false">確 定</el-button>

        </div>

        </el-dialog>


        <script>

        export default {

        name: "dengmiQuery",

        comments: {

        DengmiModify

        },

        data() {

        return {

        modifyForm:{

        formLabelWidth:'120px',

        mimian:'',

        mimu:''

        },

        dengmiQueryForm: {

        dialogDeleteVisible:false,

        dialogVisible: false,

        list: []

        }

        };

        },

        methods: {

        submitForm(formName) {

        console.log(formName.mimu);

        this.$http.get('http://localhost:909/dengmi/showDengmi2').then(function (success) {

        console.log("This request is succeed! Here is the response:");

        this.dengmiQueryForm.list = success.body.result;

        this.dengmiQueryForm.requestResult = true;

        }, function (error) {

        console.log("This request is failed! Here is the response:");

        console.log(error);

        this.dengmiQueryForm.requestResult = false;

        })

        },

        handleEdit(row) {

        this.dengmiQueryForm.deleteShow = row.mimian + "(" + row.mimu + ")" + row.midi + "/" + row.zuozhe;

        this.modifyForm.mimian=row.mimian;

        this.modifyForm.mimu=row.mimu;

        }

        }

        }

        </script>


        如上代碼,是在el-table標(biāo)簽上綁定了行單擊事件*@row-click=“handleEdit”*,該方法的參數(shù)row即為當(dāng)前行的數(shù)據(jù)。

        在handleEdit方法中,通過對data中的參數(shù)賦值,然后新增窗口中通過使用data中的參數(shù)來獲取當(dāng)前行的數(shù)據(jù),從而實現(xiàn)將當(dāng)前行的數(shù)據(jù)傳遞到新的對話框中。


        這個方法雖然也能實現(xiàn)需求,但是比較麻煩:當(dāng)有別的操作的時候,比如我再添加一個刪除操作,就需要在點擊刪除按鈕的時候,獲取當(dāng)前行的數(shù)據(jù),然后進行刪除操作;而因為新增和刪除使用的是不同的對話框,其取值也是要通過handleEdit方法來獲取,因此,當(dāng)按鈕較多,或者當(dāng)前行的字段值較多的時候,就需要在handleEdit中對許多許多的變量進行賦值,而且是對所有按鈕的所有參數(shù)。這個工作量想想還是挺恐怖的。


        1.2 使用slot-scope獲取數(shù)據(jù)

        slot-scope是屬于VUE的東東,叫做插槽;至于插槽是個什么東東,來戳這里。

        在操作列,對操作按鈕先用帶有slot-scope屬性的dom進行包裝,即可獲取當(dāng)前行的數(shù)據(jù),具體的代碼,除了操作列不同外,還需要刪除el-table標(biāo)簽中綁定的*@row-click*方法,剩下的都一樣:


        <el-table-column label="操作嘗試2">

        <template slot-scope="scope">

        <el-button type="text" @click="checkDetail(scope.row)">查看詳情</el-button>

        </template>

        </el-table-column>

        <script>

        export default {

               name: "dengmiQuery",

               data() {

                   return {

                       modifyForm:{

                           formLabelWidth:'120px',

                           mimian:'',

                           mimu:''

                       },

                       dengmiQueryForm: {

                           dialogVisible: false,

                           list: [],

                       }

                   };

               },

               methods: {

                   checkDetail(val){

                       console.log(val)

                   }


               }

           }

          </script>


        通過<template slot-scope=“scope”>來定義當(dāng)前行的數(shù)據(jù)對象,然后通過scope.row來獲取當(dāng)前行的數(shù)據(jù)。


        全部代碼

        <template>

           <div>

               <el-form :model="dengmiQueryForm" ref="dengmiQueryForm" label-width="100px" class="demo-ruleForm" size="mini">

                   <el-row>

                       <el-col span="8">

                           <el-form-item label="謎面">

                               <el-input v-model="dengmiQueryForm.mimian"></el-input>

                           </el-form-item>

                       </el-col>

                       <el-col span="8">

                           <el-form-item label="謎目">

                               <el-input v-model="dengmiQueryForm.mimu"></el-input>

                           </el-form-item>

                       </el-col>

                       <el-col span="8">

                           <el-form-item label="謎格">

                               <el-input v-model="dengmiQueryForm.mige"></el-input>

                           </el-form-item>

                       </el-col>

                   </el-row>

                   <el-row>

                       <el-col span="8">

                           <el-form-item label="謎底">

                               <el-input v-model="dengmiQueryForm.midi"></el-input>

                           </el-form-item>

                       </el-col>

                       <el-col span="8">

                           <el-form-item label="作者">

                               <el-input v-model="dengmiQueryForm.zuozhe"></el-input>

                           </el-form-item>

                       </el-col>

                       <el-col span="8">

                           <el-form-item label="謎底字?jǐn)?shù)">

                               <el-input v-model="dengmiQueryForm.midiLength"></el-input>

                           </el-form-item>

                       </el-col>

                   </el-row>

                   <el-row>

                       <el-col>

                           <el-button type="primary" @click="submitForm" icon="el-icon-search">查詢</el-button>

                           <el-button type="warning" @click="resetForm" icon="el-icon-search" plain>重置</el-button>

                       </el-col>

                   </el-row>

               </el-form>

               <el-header></el-header>

               <div v-if="dengmiQueryForm.requestResult">

                   <el-table :data="dengmiQueryForm.list.slice((dengmiQueryForm.currentPage-1)*dengmiQueryForm.pagesize,dengmiQueryForm.currentPage*dengmiQueryForm.pagesize)"

                             stripe border width="100%" height="350">

                       <el-table-column type="index" fixed="left"></el-table-column>

                       <el-table-column prop="mimian" label="謎面" width="300" fixed="left">

                       </el-table-column>

                       <el-table-column prop="dengmiSeq" label="序號">

                       </el-table-column>

                       <el-table-column prop="mimu" label="謎目">

                       </el-table-column>

                       <el-table-column prop="mige" label="謎格">

                       </el-table-column>

                       <el-table-column prop="midi" label="謎底">

                       </el-table-column>

                       <el-table-column prop="zuozhe" label="作者">

                       </el-table-column>

                       <el-table-column prop="mizhu" label="注">

                       </el-table-column>

                       <el-table-column prop="shangxi" label="賞析">

                       </el-table-column>

                       <el-table-column prop="leixing" label="類型">

                       </el-table-column>

                       <el-table-column label="操作" fixed="right" width="200px">

                           <el-row>

                               <el-col :span="10">

                                   <el-tooltip effect="dark" content="編輯當(dāng)前行" placement="top">

                                       <el-button size="mini" @click="dengmiQueryForm.dialogVisible = true">編輯</el-button>

                                   </el-tooltip>

                               </el-col>

                               <el-col :span="10">

                                   <el-tooltip effect="light" content="刪除當(dāng)前行" placement="top">

                                       <el-button size="mini" @click="dengmiQueryForm.dialogDeleteVisible = true" type="danger" plain>刪除</el-button>

                                   </el-tooltip>

                               </el-col>

                           </el-row>

                       </el-table-column>

                       <el-table-column label="操作嘗試2">

                           <template slot-scope="scope">

                               <el-button type="text" @click="checkDetail(scope.row)">查看詳情</el-button>

                           </template>

                       </el-table-column>

                   </el-table>

                   <div style="margin-top: 5px;"></div>

                   <el-pagination

                           prev-text="上一頁"

                           next-text="下一頁"

                           background

                           @size-change="handleSizeChange"

                           @current-change="handleCurrentChange"

                           :current-page="dengmiQueryForm.currentPageA"

                           :page-sizes="[5,10,50,100]"

                           :page-size="5"

                           layout="total, sizes, prev, pager, next, jumper"

                           :total="dengmiQueryForm.list.length">

                   </el-pagination>

               </div>

               <div v-else>

                   請求失敗!

               </div>

               <el-dialog title="編輯燈謎" :visible.sync="dengmiQueryForm.dialogVisible">

                   <el-form :model="modifyForm">

                       <el-form-item label="謎面" :label-width="modifyForm.formLabelWidth">

                           <el-input v-model="modifyForm.mimian" auto-complete="off"></el-input>

                       </el-form-item>

                       <el-form-item label="謎目" :label-width="modifyForm.formLabelWidth">

                           <el-input v-model="modifyForm.mimu" auto-complete="off"></el-input>

                       </el-form-item>

                   </el-form>

                   <div slot="footer" class="dialog-footer">

                       <el-button @click="dengmiQueryForm.dialogVisible = false">取 消</el-button>

                       <el-button type="primary" @click="dengmiQueryForm.dialogVisible = false">確 定</el-button>

                   </div>

               </el-dialog>

               <el-dialog title="刪除燈謎" :visible.sync="dengmiQueryForm.dialogDeleteVisible">

                   <h1><span style="color: red"><strong>確定刪除該行數(shù)據(jù)?刪除后不可恢復(fù)!</strong></span></h1>

                   <el-form>

                       <el-form-item label="當(dāng)前行數(shù)據(jù)">

                           <el-col :span="18">

                               <el-input v-model="dengmiQueryForm.deleteShow" readonly></el-input>

                           </el-col>

                       </el-form-item>

                   </el-form>

                   <div slot="footer" class="dialog-footer">

                       <el-button @click="dengmiQueryForm.dialogDeleteVisible = false">取 消</el-button>

                       <el-button type="primary" @click="dengmiQueryForm.dialogDeleteVisible = false">確 定</el-button>

                   </div>

               </el-dialog>

           </div>

        </template>

        <script>

           export default {

               name: "dengmiQuery",

               data() {

                   return {

                       modifyForm:{

                           formLabelWidth:'120px',

                           mimian:'',

                           mimu:''

                       },

                       dengmiQueryForm: {

                           deleteShow:'',

                           dialogDeleteVisible:false,

                           dialogVisible: false,

                           currentRow: null,

                           visibleA: false,

                           currentPage: 1, //初始頁

                           pagesize: 5,    //    每頁的數(shù)據(jù)

                           currentPageA: 1,

                           mimian: '',

                           mimu: '',

                           mige: '',

                           midi: '',

                           zuozhe: '',

                           midiLength: '',

                           list: [],

                           requestResult: true,

                           thisRowData:{}

                       }

                   };

               },

               methods: {

                   submitForm(formName) {

                       console.log(formName.mimu);

                       this.$http.get('http://localhost:909/dengmi/showDengmi2').then(function (success) {

                           console.log("This request is succeed! Here is the response:");

                           this.dengmiQueryForm.list = success.body.result;

                           this.dengmiQueryForm.requestResult = true;

                       }, function (error) {

                           console.log("This request is failed! Here is the response:");

                           console.log(error);

                           this.dengmiQueryForm.requestResult = false;

                       })

                   },

                   resetForm(formName) {

                       this.$refs[formName].resetFields();

                   },

                   handleSizeChange(size) {

                       this.dengmiQueryForm.pagesize = size;

                       console.log(this.dengmiQueryForm.pagesize)  //每頁下拉顯示數(shù)據(jù)

                   },

                   handleCurrentChange(currentPage) {

                       this.dengmiQueryForm.currentPage = currentPage;

                       console.log(this.dengmiQueryForm.currentPage)  //點擊第幾頁

                   },

                   handleEdit(row) {

                       this.dengmiQueryForm.deleteShow = row.mimian + "(" + row.mimu + ")" + row.midi + "/" + row.zuozhe;

                       // this.dengmiQueryForm.currentRow = row;

                       console.log(this.dengmiQueryForm.deleteShow);

                       this.modifyForm.mimian=row.mimian;

                       this.modifyForm.mimu=row.mimu;


                       // console.log("event=" + event);

                       // console.log(colunm)

                   },

                   handleClose(done) {

                       this.$confirm('確認(rèn)關(guān)閉?')

                           .then(_ => {

                               done();

                           })

                           .catch(_ => {});

                   },

                   checkDetail(val){

                       console.log(val)

                   }


               }

           }

        </script>

        <style scoped>

        </style>


        藍藍設(shè)計www.shtzxx.cn )是一家專注而深入的界面設(shè)計公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計、BS界面設(shè)計 、 cs界面設(shè)計 、 ipad界面設(shè)計 、 包裝設(shè)計 、 圖標(biāo)定制 、 用戶體驗 、交互設(shè)計、 網(wǎng)站建設(shè) 平面設(shè)計服務(wù)

        日歷

        鏈接

        個人資料

        藍藍設(shè)計的小編 http://www.shtzxx.cn

        存檔

        主站蜘蛛池模板: 欧洲熟妇色xxxx欧美老妇多毛| 精品香蕉久久久午夜福利| free性丰满hd| 无码av波多野结衣久久| 亚洲精品久久麻豆蜜桃| 夫の上司に犯 在线观看| 在教室伦流澡到高潮hnp| 总裁与秘书啪啪日常h| 男女一边摸一边做爽爽电视| 日韩人妻无码精品-专区| 国产在线精品一区二区不卡麻豆| 久久久久久亚洲av无码专区| 国产一码二码三码区别| md豆传媒一二三区| 内射人妻视频国内| av无码中文字幕不卡一区二区三区 | gogogo高清在线怎么开始| 欧美日韩精品一区二区在线视频| 熟妇高潮喷沈阳45熟妇高潮喷| 人妻av综合天堂一区| 国产精品99久久久久久猫咪| videos日本多毛hd护士| 最近最新中文字幕视频| 女女互磨互喷水高潮les呻吟| 日日噜噜夜夜狠狠va视频v| 亚洲av无码一区二区三区网站| 国产精品久久久久久久久久红粉| 伦子系列午睡沙发| 亚洲精品国产美女久久久99| 2019年92午夜视频福利| _97夜夜澡人人爽人人喊_欧美| 姐姐4免费观看大全电视剧中文版 国产精品美女久久久久av超清 | av潮喷大喷水系列无码| 亚洲乱妇老熟女爽到高潮的片| 处破痛哭a√18成年片免费| 波多野结衣av无码| 亚洲 欧美 日韩一区二区| 美国大肥女bbwbbw| 国产成人综合久久亚洲精品| 麻豆精品久久久久久久99蜜桃| 四虎国产精品永久在线|