溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

發(fā)布時(shí)間:2022-04-28 09:17:02 來源:億速云 閱讀:226 作者:iii 欄目:開發(fā)技術(shù)

本文小編為大家詳細(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è)秘鑰,列下顯示查看公司秘鑰

如圖:

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

點(diǎn)擊按鈕顯示當(dāng)前的企業(yè)秘鑰:

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

1.需求分析和步驟:

1.首先改造JS代碼:

首先把數(shù)據(jù)要渲染的visible設(shè)置為true需要的設(shè)置false,

主要的formatter: actionFormatter這個(gè)用于:格式化輸出函數(shù)及其他

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

    //操作欄的格式化
    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()>&nbsp;企業(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)用&hellip;)

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

   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ù)

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(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>

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

問題:這樣做一開始是沒有想到獲取的時(shí)候是通過選擇點(diǎn)擊行的獲取的數(shù)據(jù),或者會(huì)出現(xiàn)提示框

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

需要在點(diǎn)擊一下,發(fā)現(xiàn)會(huì)遮擋數(shù)據(jù),雖然只有幾秒鐘,但是給人感覺不舒服。所以今天更新一下這個(gè)問題。

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

2. 更新問題:

        對(duì)js的代碼進(jìn)行更改,之前用的屬性是獲取選擇行,現(xiàn)在使用的屬性是獲取到頁面的數(shù)據(jù)在通過傳入的坐標(biāo)辨別是哪個(gè)對(duì)象的數(shù)據(jù)。

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(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ù)

3.columns屬性

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

Vue怎么查詢數(shù)據(jù)并通過bootstarp?table渲染數(shù)據(jù)

讀到這里,這篇“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è)資訊頻道。

向AI問一下細(xì)節(jié)

免責(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)容。

AI