您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“Vue怎么查詢數(shù)據(jù)并通過bootstarp table渲染數(shù)據(jù)”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Vue怎么查詢數(shù)據(jù)并通過bootstarp table渲染數(shù)據(jù)”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。
把頁面進(jìn)行改造把a(bǔ)pptoken,appkey列隱藏,并且更改該列為企業(yè)秘鑰,列下顯示查看公司秘鑰
如圖:
點(diǎn)擊按鈕顯示當(dāng)前的企業(yè)秘鑰:
1.首先改造JS代碼:
首先把數(shù)據(jù)要渲染的visible設(shè)置為true需要的設(shè)置false,
主要的formatter: actionFormatter這個(gè)用于:格式化輸出函數(shù)及其他
//操作欄的格式化 function actionFormatter(value, row, index) { console.log("列"+row,"坐標(biāo)"+index) console.log(row.appkey+"---"+row.apptoken) //var id = value; var result = ""; result = "<a class=\"btn label label-success btn \" style='background-color: #4575FF' οnclick=QyMsg()> 企業(yè)秘鑰</a>"; return result; }
只要的這個(gè)返回的數(shù)據(jù)不能用Vue 的點(diǎn)擊@click=“QyMsg”,無效后面解決的方案采用前端設(shè)置一個(gè)onclick方法QyMSg()通過它來調(diào)用Vue框架的vm對(duì)象的方法實(shí)現(xiàn)該效果。(不推薦,第二天發(fā)現(xiàn)可以通過Vm對(duì)象調(diào)用…)
2. 對(duì)Vue創(chuàng)建一個(gè)對(duì)象,用于返回調(diào)用方法其中QyDataList屬性設(shè)置點(diǎn)擊后返回對(duì)話框的排版。在通過vue屬性把數(shù)據(jù)遍歷出來
var vm = new Vue({ el:'#dpLTE', data: { keyword: null, companyname:'', submitMsg:{ id:0 }, QyDataList:[ { title:"企業(yè)的秘鑰", modelname:'mchtConf', list:[ //設(shè)置前端頁面的數(shù)據(jù)模型 // 其中field :返回json數(shù)據(jù)中的name {isvalid:"",checkexpession:"",field : "apptoken", title : "apptoken", type:"input"}, {isvalid:"",checkexpession:"",field : "appkey", title : "key", type:"input"}, // {isvalid:"",checkexpession:"",field : "craterorderflag", title : "創(chuàng)建倉庫單", type:"select",data:'iscraterorderflagList'} ] } ] }, methods : { QyMsgAlert:function () {//企業(yè)查看 var ck = $('#dataGrid').bootstrapTable('getSelections');//這個(gè)是通過選擇行獲取數(shù)據(jù) if(checkedRow(ck)){//checkedRow判斷一下行是否被選擇 vm.submitMsg=ck[0];//把獲取到的數(shù)據(jù)返回給vm用于渲染 layer.open({ type : 1, title : '企業(yè)秘鑰', closeBtn : 1, anim: -1, isOutAnim: false, shadeClose : false, shade : 0.3, area : ['450px', '250px'], shift : 5, content : $("#setQyMsgDlg"), btn: ['確定', '取消'], success: null, yes:null }); } }, } })
這個(gè)方法用于判斷行是否被選擇
checkedRow = function (id) { var isOK = true; if (id == undefined || id == "" || id == 'null' || id == 'undefined') { isOK = false; dialogMsg('您沒有選中任何數(shù)據(jù)項(xiàng)!'); } else if (id.length > 1) { isOK = false; dialogMsg('您只能選擇一條數(shù)據(jù)項(xiàng)!'); } return isOK; }
在js中添加頁面提交標(biāo)簽用于彈出的對(duì)話框排版和數(shù)據(jù)。數(shù)據(jù)的來源QyDataList的數(shù)據(jù)
類似這樣的關(guān)系,在通過QyDataList把key,value遍歷給標(biāo)簽
<!-- 企業(yè)秘鑰 --> div這個(gè)id的時(shí)候需要通過用來彈出窗口的布局 <div id="setQyMsgDlg" class="container-fluid" > <table class="form" > <tbody v-for="dataMsg in QyDataList"> <tr v-for="(singleDataMsg,index) in dataMsg.list" v-if="index%2==0" > <td class="formTitle" v-if="index%2==0&&(singleDataMsg.type=='select'||singleDataMsg.type=='input')"><b>{{singleDataMsg.title}}:</b><font v-if="singleDataMsg.checkexpession=='NotNull'" face="宋體">*</font></td> <td class="formValue" v-if="index%2==0&&(singleDataMsg.type=='select'||singleDataMsg.type=='input')"> <b class="formTitle " v-if="(singleDataMsg.type=='select'||singleDataMsg.type=='input')">{{submitMsg[singleDataMsg.field]}}<font v-if="singleDataMsg.checkexpession=='NotNull'" face="宋體">*</font></b> </td> </tr> <tr v-for="(singleDataMsg,index) in dataMsg.list" v-if="index%2==1" > <td class="formTitle" v-if="index%2==1&&(singleDataMsg.type=='select'||singleDataMsg.type=='input')"><b>{{singleDataMsg.title}}:</b><font v-if="singleDataMsg.checkexpession=='NotNull'" face="宋體">*</font></td> <td class="formValue" v-if="index%2==1&&(singleDataMsg.type=='select'||singleDataMsg.type=='input')"> <b class="formTitle " v-if="(singleDataMsg.type=='select'||singleDataMsg.type=='input')">{{submitMsg[singleDataMsg.field]}}<font v-if="singleDataMsg.checkexpession=='NotNull'" face="宋體">*</font></b> </td> </tr> </tbody> </table> </div>
問題:這樣做一開始是沒有想到獲取的時(shí)候是通過選擇點(diǎn)擊行的獲取的數(shù)據(jù),或者會(huì)出現(xiàn)提示框
需要在點(diǎn)擊一下,發(fā)現(xiàn)會(huì)遮擋數(shù)據(jù),雖然只有幾秒鐘,但是給人感覺不舒服。所以今天更新一下這個(gè)問題。
對(duì)js的代碼進(jìn)行更改,之前用的屬性是獲取選擇行,現(xiàn)在使用的屬性是獲取到頁面的數(shù)據(jù)在通過傳入的坐標(biāo)辨別是哪個(gè)對(duì)象的數(shù)據(jù)。
在對(duì)操作欄的格式化進(jìn)行修改,第一種的方式是調(diào)用list.html的js方法間接調(diào)用vue對(duì)象的方式( 考 昨天沒想到 ),第二種方式是直接調(diào)用vue對(duì)象并且傳入坐標(biāo),這樣就不需要和第一種一樣脫褲子放屁了多寫一個(gè)步驟。
讀到這里,這篇“Vue怎么查詢數(shù)據(jù)并通過bootstarp table渲染數(shù)據(jù)”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。