如何使用layer彈窗制作編輯User信息頁(yè)面

這篇文章主要介紹如何使用layer彈窗制作編輯User信息頁(yè)面,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比秀山土家族苗族網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式秀山土家族苗族網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋秀山土家族苗族地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴。

用戶信息展示頁(yè)面為A頁(yè)面,編輯頁(yè)面為B頁(yè)面。A是B的父頁(yè)面

首先在A頁(yè)面添加按鈕,點(diǎn)擊觸發(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頁(yè)面直接調(diào)用,后面會(huì)提到
function editSingle(index){
 userContent = vm.content[index]
 layer.open({
  type: 2,
  title: '編輯',
  area : ['800px' , '520px'], 
  scrollbar: false,//禁止瀏覽器滾動(dòng)
  content: 'bUser/editSingle'
  }); 
}

B頁(yè)面初始化時(shí)從A頁(yè)面取值,用parent.xxx

var iframe = parent.layer.getFrameIndex(window.name); //獲取窗口索引,這里的B頁(yè)面所在窗口的索引值為1
 var vm = new Vue({
  el:'#editUser',
  data:{
   contents:parent.userContent,//從A頁(yè)面取值
   titles:['手機(jī)','密碼','用戶名','性別','郵箱','地區(qū)','個(gè)性簽名','頭像']
  }
 });

使用Vue動(dòng)態(tài)生成html語(yǔ)句

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

效果如下:

如何使用layer彈窗制作編輯User信息頁(yè)面

由于其中'性別'是radio單選框,所以需要判斷

//判斷性別,并選中對(duì)應(yīng)的radio
  if(vm.contents.sex!=''){
   if(vm.contents.sex=='MAN') $("#sex:eq(0)").click();
   else $("#sex:eq(1)").click();
  }

還原按鈕,即刷新頁(yè)面:

$("#restore").click(function(){
   window.location.reload();
  })

保存按鈕:

$("#save").click(function(){
   $("#editUser").submit();
   parent.location.reload();
   //parent.layer.close(iframe);//如果執(zhí)行這一步,會(huì)導(dǎo)致submit無法提交到服務(wù)器,這里用刷新頁(yè)面使彈窗關(guān)閉
  })

在后臺(tái)將form數(shù)據(jù)保存進(jìn)數(shù)據(jù)庫(kù)即可

后續(xù)優(yōu)化:

將B頁(yè)面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頁(yè)面的layer彈窗添加end函數(shù)回調(diào),使彈窗關(guān)閉后刷新頁(yè)面:

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 );//初始化分頁(yè)插件
 });
 $("#pageInputGroup").attr("class","input-group");
 $("#pageInput").attr("placeholder",function(index,value){
  $(this).val("");
  return "第"+options.currentPage+"頁(yè),共"+options.totalPages+"頁(yè)";
 });
}
var userContent
function editSingle(index){
 userContent = vm.content[index]
 layer.open({
  type: 2,
  title: '編輯',
  area : ['800px' , '520px'], 
  scrollbar: false,//禁止瀏覽器滾動(dòng)
  content: '<%=basePath%>/BSMSys/bUser/editSingle',
  end:function(){
   jumpToPage(options.currentPage);
  }
 }); 
}

以上是“如何使用layer彈窗制作編輯User信息頁(yè)面”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

文章標(biāo)題:如何使用layer彈窗制作編輯User信息頁(yè)面
網(wǎng)頁(yè)網(wǎng)址:http://muchs.cn/article20/gcidco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航網(wǎng)站制作、App設(shè)計(jì)微信公眾號(hào)、網(wǎng)站設(shè)計(jì)公司動(dòng)態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司