這篇文章主要介紹如何使用layer彈窗制作編輯User信息頁面,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)主營炎陵網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都app軟件開發(fā),炎陵h5微信小程序開發(fā)搭建,炎陵網(wǎng)站營銷推廣歡迎炎陵等地區(qū)企業(yè)咨詢用戶信息展示頁面為A頁面,編輯頁面為B頁面。A是B的父頁面
首先在A頁面添加按鈕,點擊觸發(fā)函數(shù),函數(shù)初始化layer彈窗
‘編輯'按鈕:
<button type="button" class="btn btn-primary btn-xs" id="edit{{item.id}}" onclick="editSingle('{{$index}}')">修改</button>
執(zhí)行函數(shù):
var userContent//作為全局變量,之后給B頁面直接調(diào)用,后面會提到 function editSingle(index){ userContent = vm.content[index] layer.open({ type: 2, title: '編輯', area : ['800px' , '520px'], scrollbar: false,//禁止瀏覽器滾動 content: 'bUser/editSingle' }); }
B頁面初始化時從A頁面取值,用parent.xxx
var iframe = parent.layer.getFrameIndex(window.name); //獲取窗口索引,這里的B頁面所在窗口的索引值為1 var vm = new Vue({ el:'#editUser', data:{ contents:parent.userContent,//從A頁面取值 titles:['手機','密碼','用戶名','性別','郵箱','地區(qū)','個性簽名','頭像'] } });
使用Vue動態(tài)生成html語句
<form class="form-horizontal" id="editUser" action="<%=basePath%>/BSMSys/bUser/save" method="post"> <div class="form-group" v-for="(key,value) in contents" > <div v-if="$index==0"> <div hidden> <input v-else type="text" class="form-control" id="{{key}}" name="{{key}}" placeholder="{{value}}" value="{{value}}"> </div> </div> <div v-if="$index!=0"> <label for="{{key}}" class="col-xs-2 control-label">{{titles[$index-1]}}</label> <div class="col-xs-9" > <div v-if="$index==4 || value=='MAN'" class="fixradio"> <input type="radio" name="{{key}}" id="{{key}}" value="MAN"/> 男 <input type="radio" name="{{key}}" id="{{key}}" value="WOMEN"/> 女 </div> <input v-else type="text" class="form-control" id="{{key}}" name="{{key}}" placeholder="{{value}}" value="{{value}}"> </div> </div> </div> <div class="form-group"> <div class="col-xs-offset-5 col-xs-1"> <button class="btn btn-primary" id="save">保存</button> </div> <div class="col-xs-1"> <button class="btn btn-default" id="restore">還原</button> </div> </div> </form>
效果如下:
由于其中'性別'是radio單選框,所以需要判斷
//判斷性別,并選中對應(yīng)的radio if(vm.contents.sex!=''){ if(vm.contents.sex=='MAN') $("#sex:eq(0)").click(); else $("#sex:eq(1)").click(); }
還原按鈕,即刷新頁面:
$("#restore").click(function(){ window.location.reload(); })
保存按鈕:
$("#save").click(function(){ $("#editUser").submit(); parent.location.reload(); //parent.layer.close(iframe);//如果執(zhí)行這一步,會導(dǎo)致submit無法提交到服務(wù)器,這里用刷新頁面使彈窗關(guān)閉 })
在后臺將form數(shù)據(jù)保存進數(shù)據(jù)庫即可
后續(xù)優(yōu)化:
將B頁面form表單的submit提交改為ajax提交,
function save(){ $.ajax({ type:"post", url:"<%=basePath%>/BSMSys/bUser/save", data: $("#editUser").serialize(),//序列化表單數(shù)據(jù) complete: function() { parent.layer.close(iframe);//關(guān)閉彈窗 } }); }
$('#save').on('click', function(){ save(); });
將A頁面的layer彈窗添加end函數(shù)回調(diào),使彈窗關(guān)閉后刷新頁面:
function jumpToPage(page){ $.get("<%=basePath%>/BSMSys/bUser/showUser?pageNum="+page, function(data) { vm.content=data.content;//賦值給vue currPage = data.number+1; $('#pager').bootstrapPaginator("show",currPage );//初始化分頁插件 }); $("#pageInputGroup").attr("class","input-group"); $("#pageInput").attr("placeholder",function(index,value){ $(this).val(""); return "第"+options.currentPage+"頁,共"+options.totalPages+"頁"; }); }
var userContent function editSingle(index){ userContent = vm.content[index] layer.open({ type: 2, title: '編輯', area : ['800px' , '520px'], scrollbar: false,//禁止瀏覽器滾動 content: '<%=basePath%>/BSMSys/bUser/editSingle', end:function(){ jumpToPage(options.currentPage); } }); }
以上是“如何使用layer彈窗制作編輯User信息頁面”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計公司行業(yè)資訊頻道!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
分享名稱:如何使用layer彈窗制作編輯User信息頁面-創(chuàng)新互聯(lián)
本文URL:http://vcdvsql.cn/article16/phggg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、ChatGPT、小程序開發(fā)、企業(yè)建站、商城網(wǎng)站、品牌網(wǎng)站設(shè)計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容