欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jfinal與bootstrap的登出實(shí)戰(zhàn)詳解

 更新時(shí)間:2017年11月27日 16:27:52   作者:沉默王二  
這篇文章主要為大家詳細(xì)介紹了jfinal與bootstrap的登出實(shí)戰(zhàn),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

前言:本篇推出“jfinal與bootstrap的登出實(shí)戰(zhàn)”,旨在介紹如果通過(guò)a標(biāo)簽彈出登出確認(rèn)框,然后發(fā)送退出請(qǐng)求到j(luò)final,然后再刷新頁(yè)面的做法。主要難點(diǎn)在于1.如果通過(guò)a標(biāo)簽的內(nèi)容彈出登出確認(rèn)框,2.如何通過(guò)a標(biāo)簽刷新對(duì)應(yīng)彈出的頁(yè)面。

前端技術(shù)

1.構(gòu)建a標(biāo)簽

復(fù)制代碼 代碼如下:
<a href="${ctx}/mem/logout"  target="ajaxTodo" callback="ajaxDone" atitle="你確定要退出嗎?" id="user_login_out" style="padding: 0 6px;">退出</a>

注意:

1. target=”ajaxTodo”,指定a標(biāo)簽要通過(guò)ajax發(fā)起請(qǐng)求。
2. callback=”ajaxDone”,指定a標(biāo)簽回調(diào)函數(shù)
3. atitle=”你確定要退出嗎?”,指定確認(rèn)信息

2.初始化a標(biāo)簽ajax事件

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

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

注意:

1. 頁(yè)面加載完成后執(zhí)行initUI方法,使target為ajaxTodo的a標(biāo)簽具有指定的ajaxTodo方法。

3.a標(biāo)簽的ajax請(qǐng)求

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 記錄登出的頁(yè)面

4.為jquery對(duì)象增加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.回調(diào)函數(shù)

function ajaxDone(json) {
 YUNM.ajaxDone(json);
 if (json[YUNM.keys.statusCode] == YUNM.statusCode.ok || json[YUNM.keys.statusCode] == YUNM.statusCode.info) {
 // 如果指定了后調(diào)轉(zhuǎn)頁(yè)面,進(jìn)行調(diào)轉(zhuǎn)
 if (json.forwardUrl) {
  location.href = json.forwardUrl;
 }
 }
}

6.彈出weebox確認(rèn)框

$.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 : '確認(rèn)',
 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"); // 為了防止重復(fù)初始化
 $(o).ui_button();
 });

}

jfinal技術(shù)

public void logout() {

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

 ajaxDoneSuccess("登出成功!");

 renderJson();
 }


增加logout方法。

這里寫(xiě)圖片描述

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論