Vue form 表單提交+ajax異步請(qǐng)求+分頁效果
廢話不多說了,直接給大家貼代碼了,具體代碼如下所示:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <meta charset="UTF-8"/> <title>異步參數(shù)上傳</title> <link rel="stylesheet" type="text/css" href="${ctx }/css/bootstrap.min.css" rel="external nofollow" > <#--<link href="css/fileinput.css" rel="external nofollow" media="all" rel="stylesheet" type="text/css"/>--> <link href="${ctx }/css/fileinput.css" rel="external nofollow" media="all" rel="stylesheet" type="text/css"/> <link rel="stylesheet" type="text/css" href="${ctx }/css/css.css" rel="external nofollow" /> <#--<link rel="stylesheet" type="text/css" href="${ctx }/css/style.css" rel="external nofollow" />--> <link rel="stylesheet" type="text/css" href="${ctx }/css/subwelcome.css" rel="external nofollow" /> <script>var $context = {}; $context.ctx = '${ctx}'; $context.resources = '${ctx}/resources'; </script> </head> <body> <div id="app" class="htmleaf-container"> <div class="container kv-main"> <br> <div style="margin-left: 200px;" class="robot-b-name"> <a class=".btn btn-primary" href="">返回上傳頁面</a> </div> <br> <form @submit.prevent="submit" class="well form-inline"> <input type="text" class="input-big" style="width: 500px" v-model.trim="batchInforRequestVO.appkey" placeholder="請(qǐng)輸入appkey"> <input type="text" class="input-group" style="width: 500px" v-model.trim="batchInforRequestVO.batchnum" placeholder="請(qǐng)輸入批次號(hào)"> <input type="hidden" class="input-group" style="width: 500px" v-model.trim="batchInforRequestVO.currentPage"> <button type="submit" class="btn btn-info">查詢</button> </form> <br> <!--提示框公共部分begining--> <div class="modal-mask" v-show="show"> <div class="modal-confirm"> <h4 class="confirm-header"> <i class="iconfont icon-questioncircle"></i> {{ title }} </h4> <div class="confirm-content"> {{ content }} </div> <div class="confirm-btns"> <#--<button class="btn" v-on:click="opt(1)">取 消</button>--> <button class="btn btn-primary" v-on:click="opt(2)">確 定</button> </div> </div> </div> <br> <!--提示框公共部分ending--> <div class="modal-mask" v-show="showcontent"> <div class="modal-confirm"> <h4 class="confirm-header"> <i class="iconfont icon-questioncircle"></i> {{ title }} </h4> <div class="confirm-content"> {{ content }} </div> <div class="confirm-btns"> <#--<button class="btn" v-on:click="opt(1)">取 消</button>--> <button class="btn btn-primary" v-on:click="opt(3)">確 定</button> </div> </div> </div> <div>查詢結(jié)果</div> <!-- TableBegining --> <div> <table class="table table-striped table-bordered table-condensed"> <tr> <th>批次號(hào)</th> <th>處理進(jìn)度</th> <th>文件名稱</th> <th>上傳時(shí)間</th> <th>請(qǐng)求方法</th> <th>操作</th> </tr> <tr v-for="(batchInforResponseVO, index) in BatchInforResponseVO "> <td>{{batchInforResponseVO.batchNum}}</td> <td>{{batchInforResponseVO.processPercentage}}</td> <td>{{batchInforResponseVO.channelName}}</td> <td>{{batchInforResponseVO.inserTime}}</td> <td>{{batchInforResponseVO.requestAddre}}</td> <td><a id="opreat" v-on:click="defaultExport(index)" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >導(dǎo)出 </a><a v-on:click="redirectTo(index)" id="opreat" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >自定義導(dǎo)出 </a></td> </tr> </table> </div> <!-- TableEnding --> <!-- 分頁部分Begining --> <div class="span6" style="width:25%;margin-right: 10px;float: right;"> <div style="width: 500px;" id="DataTables_Table_0_length"> <span> 每頁10條記錄 當(dāng)前頁{{batchInforRequestVO.currentPage}}</span>   <span>共{{totalPage}}頁 <a id="previousPage" v-on:click="changePage(1)" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >←上一頁</a>   <a id="nextPage" v-on:click="changePage(2)" href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >下一頁 →</a></span> </div> </div> <!-- 分頁部分Ending --> </div> </div> </div> </body> <script type="text/javascript"> window.history.go(1); </script> <script src="${ctx }/js/jquery/jquery-2.0.3.min.js"></script> <script src="${ctx }/js/jquery.form.js"></script> <script src="${ctx }/js/vue/vue.js"></script> <script src="${ctx }/js/business/exportconfig.js" type="text/javascript"></script> </html>
var vue = new Vue({ el: '#app', data: { batchInforRequestVO: { currentPage: 1, appkey: '', batchnum: '' }, show: false, showcontent: false, onCancel: false, onOk: false, totalPage: 0, title: '提示框', content: '加載......', message: '批量數(shù)據(jù)處理', BatchInforResponseVO: [] }, methods: { refreshTest: function () { location.reload(true) }, //輸入框增加方法 add: function () { this.user.names.push({ text: "" }) }, //輸入框刪除方法 decrease: function (index) { if (!index == 0) { this.user.names.splice(index, 1) } }, changePage: function (type) { if (type == '1') { debugger if (this.batchInforRequestVO.currentPage == '1') { vue.showcontent = true; vue.content = '已經(jīng)是首頁啦!'; return } this.batchInforRequestVO.currentPage--; this.submit(); } else if (type == '2') { this.batchInforRequestVO.currentPage++; debugger if (this.batchInforRequestVO.currentPage > this.totalPage) { this.batchInforRequestVO.currentPage--; vue.showcontent = true; vue.content = '已經(jīng)是尾頁啦!'; return } this.submit(); } }, checkparam: function () { if (this.batchInforRequestVO.appkey == '' && this.batchInforRequestVO.batchnum == '') { vue.showcontent = true; vue.content = '查詢參數(shù)不可以為空!'; return false } else { return true } }, opt(type){ this.show = false if (type == '1') { if (this.onCancel) this.onCancel() } else if (type == '3') { this.showcontent = false if (this.onOk) this.onOk() } else { if (this.onOk) this.onOk() vue.refreshTest(); } this.onCancel = false this.onOk = false document.body.style.overflow = '' }, submit: function () { debugger var data = JSON.stringify(this.batchInforRequestVO); // 這里才是你的表單數(shù)據(jù) if (!vue.checkparam()) { return } ; //da.append("name", this.name)可以逐次添加多個(gè)參數(shù) $.ajax({ url: '../interface/queryBatchInfor', data: data, type: 'POST', contentType: 'application/json', dataType: 'JSON', // cache: false, processData: false,// 告訴jQuery不要去處理發(fā)送的數(shù)據(jù) // contentType: false,// 告訴jQuery不要去設(shè)置Content-Type請(qǐng)求頭 success: function (data) { debugger if (data.respCode == 'success') { vue.BatchInforResponseVO = data.batchInforResponseVOList; vue.totalPage = data.totalPage; } else { vue.show = true; vue.content = data.respMsg; } console.log(data) }, error: function (data) { vue.show = true; vue.content = '系統(tǒng)內(nèi)部錯(cuò)誤'; } }) }, defaultExport: function ($index) { debugger var index = $index; window.location.href = $context.ctx + "../interface/defaultexcport?batchNum=" + this.BatchInforResponseVO[index].batchNum; }, redirectTo: function ($index) { vue.showcontent = true; vue.content = '進(jìn)行中......'; debugger var index = $index; // window.location.href = $context.ctx + "../interface/to_autoconfig?batchNum="+ this.BatchInforResponseVO[index].batchNum; } } })
以上所述是小編給大家介紹的Vue form 表單提交+ajax異步請(qǐng)求+分頁效果,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Vue.js實(shí)現(xiàn)多條件篩選、搜索、排序及分頁的表格功能
- 利用vue + element實(shí)現(xiàn)表格分頁和前端搜索的方法
- Vue+element-ui 實(shí)現(xiàn)表格的分頁功能示例
- Vue.js實(shí)現(xiàn)分頁查詢功能
- Vue2.5 結(jié)合 Element UI 之 Table 和 Pagination 組件實(shí)現(xiàn)分頁功能
- vuejs2.0實(shí)現(xiàn)一個(gè)簡單的分頁示例
- Vue.js實(shí)現(xiàn)無限加載與分頁功能開發(fā)
- 用Vue寫一個(gè)分頁器的示例代碼
- 基于Vue.js的表格分頁組件
- vue iview實(shí)現(xiàn)分頁功能
相關(guān)文章
Vue在chrome44偶現(xiàn)點(diǎn)擊子元素事件無法冒泡的解決方法
這篇文章主要給大家介紹了關(guān)于Vue在chrome44偶現(xiàn)點(diǎn)擊子元素事件無法冒泡的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Vue具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12vue實(shí)現(xiàn)無縫滾動(dòng)手摸手教程
這篇文章主要為大家介紹了vue實(shí)現(xiàn)無縫滾動(dòng)手摸手教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03Vue3+Element?Plus使用svg加載iconfont的處理方法
這篇文章主要介紹了Vue3+Element?Plus使用svg加載iconfont的解決方案,本文詳細(xì)介紹了如何在Element?Plus中使用iconfont,簡單的說就是要將其封裝成SVG,并且支持動(dòng)態(tài)修改顏色,需要的朋友可以參考下2022-08-08vue+elementUl導(dǎo)入文件方式(判斷文件格式)
這篇文章主要介紹了vue+elementUl導(dǎo)入文件方式(判斷文件格式),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08vue轉(zhuǎn)electron項(xiàng)目及解決使用fs報(bào)錯(cuò):Module?not?found:?Error:?Can&apo
這篇文章主要給大家介紹了關(guān)于vue轉(zhuǎn)electron項(xiàng)目及解決使用fs報(bào)錯(cuò):Module?not?found:?Error:?Can‘t?resolve?‘fs‘?in的相關(guān)資料,文中通過圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11關(guān)于vue 項(xiàng)目中瀏覽器跨域的配置問題
這篇文章主要介紹了vue 項(xiàng)目中瀏覽器跨域的配置問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11