中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

jfinal與bootstrap的登出實戰詳解

發布時間:2020-09-21 22:55:54 來源:腳本之家 閱讀:135 作者:沉默王二 欄目:web開發

前言:本篇推出“jfinal與bootstrap的登出實戰”,旨在介紹如果通過a標簽彈出登出確認框,然后發送退出請求到jfinal,然后再刷新頁面的做法。主要難點在于1.如果通過a標簽的內容彈出登出確認框,2.如何通過a標簽刷新對應彈出的頁面。

前端技術

1.構建a標簽

復制代碼 代碼如下:
<a href="${ctx}/mem/logout"  target="ajaxTodo" callback="ajaxDone" atitle="你確定要退出嗎?" id="user_login_out" >退出</a>

注意:

1. target=”ajaxTodo”,指定a標簽要通過ajax發起請求。
2. callback=”ajaxDone”,指定a標簽回調函數
3. atitle=”你確定要退出嗎?”,指定確認信息

2.初始化a標簽ajax事件

function initUI(_box) {
 var $p = $(_box || document);

 // dwz.ajax.js
 if ($.fn.ajaxTodo) {
  $("a[target=ajaxTodo]", $p).ajaxTodo();
 }
}

注意:

1. 頁面加載完成后執行initUI方法,使target為ajaxTodo的a標簽具有指定的ajaxTodo方法。

3.a標簽的ajax請求

function ajaxTodo(url, callback) {
 var $callback = callback;
 if (!$.isFunction($callback)) {
  $callback = eval('(' + callback + ')');
 }

 var forwardUrl = window.location.href;
 if (url.indexOf("?") != -1) {
  url += "&forwardUrl=" + forwardUrl;
 } else {
  url += "?forwardUrl=" + forwardUrl;
 }
 $.ajax({
  type : 'POST',
  url : url,
  dataType : "json",
  cache : false,
  success : $callback,
  error : YUNM.ajaxError
 });
}

注意:

1. forwardUrl 記錄登出的頁面

4.為jquery對象增加ajaxTodo方法

$.fn.extend({
 ajaxTodo : function() {
 return this.each(function() {
  var $this = $(this);
  $this.click(function(event) {
  var url = unescape($this.attr("href")).replaceTmById($(event.target).parents(".unitBox:first"));
  YUNM.debug(url);
  if (!url.isFinishedTm()) {
   $.showErr($this.attr("warn"));
   return false;
  }
  var title = $this.attr("atitle");
  if (title) {
   $.showConfirm(title, function() {
   ajaxTodo(url, $this.attr("callback"));
   });
  } else {
   ajaxTodo(url, $this.attr("callback"));
  }
  event.preventDefault();
  });
 });
 },
});

5.回調函數

function ajaxDone(json) {
 YUNM.ajaxDone(json);
 if (json[YUNM.keys.statusCode] == YUNM.statusCode.ok || json[YUNM.keys.statusCode] == YUNM.statusCode.info) {
 // 如果指定了后調轉頁面,進行調轉
 if (json.forwardUrl) {
  location.href = json.forwardUrl;
 }
 }
}

6.彈出weebox確認框

$.showConfirm = function(str, funcok, funcclose) {
 var okfunc = function() {
 $.weeboxs.close("yunm_confirm_box");
 funcok.call();
 };
 $.weeboxs.open(str, {
 boxid : 'yunm_confirm_box',
 contentType : 'text',
 showButton : true,
 showCancel : true,
 showOk : true,
 title : '確認',
 width : 280,
 type : 'wee',
 onopen : function() {
  init_ui_button();
 },
 onclose : funcclose,
 onok : okfunc
 });
};

function init_ui_button() {
 $("button.ui-button[init!='init']").each(function(i, o) {
 $(o).attr("init", "init"); // 為了防止重復初始化
 $(o).ui_button();
 });

}

jfinal技術

public void logout() {

 if (getSession().getAttribute("username") != null) {
  // 清除session
  getSession().removeAttribute("username");
 }

 ajaxDoneSuccess("登出成功!");

 renderJson();
 }


增加logout方法。

jfinal與bootstrap的登出實戰詳解

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丰台区| 纳雍县| 巴中市| 六盘水市| 永春县| 湖口县| 栾城县| 增城市| 云南省| 靖宇县| 云阳县| 德安县| 临夏市| 绍兴市| 红安县| 临泽县| 平顺县| 上高县| 日喀则市| 焉耆| 长岭县| 遵义市| 区。| 东兰县| 黑水县| 剑阁县| 湘潭县| 崇仁县| 庆安县| 穆棱市| 德令哈市| 文昌市| 通河县| 两当县| 炎陵县| 扎鲁特旗| 鲁甸县| 怀安县| 揭阳市| 盖州市| 休宁县|