jfinal與bootstrap的登出實(shí)戰(zhàn)詳解
前言:本篇推出“jfinal與bootstrap的登出實(shí)戰(zhàn)”,旨在介紹如果通過a標(biāo)簽彈出登出確認(rèn)框,然后發(fā)送退出請求到j(luò)final,然后再刷新頁面的做法。主要難點(diǎn)在于1.如果通過a標(biāo)簽的內(nèi)容彈出登出確認(rèn)框,2.如何通過a標(biāo)簽刷新對應(yīng)彈出的頁面。
前端技術(shù)
1.構(gòu)建a標(biāo)簽
注意:
1. target=”ajaxTodo”,指定a標(biāo)簽要通過ajax發(fā)起請求。
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. 頁面加載完成后執(zhí)行initUI方法,使target為ajaxTodo的a標(biāo)簽具有指定的ajaxTodo方法。
3.a標(biāo)簽的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.回調(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)頁面,進(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方法。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JFinal使用ajaxfileupload實(shí)現(xiàn)圖片上傳及預(yù)覽
- JFinal實(shí)現(xiàn)偽靜態(tài)的方法
- JFinal極速開發(fā)框架使用筆記分享
- java 中JFinal getModel方法和數(shù)據(jù)庫使用出現(xiàn)問題解決辦法
- Bootstrap+jfinal退出系統(tǒng)彈出確認(rèn)框的實(shí)現(xiàn)方法
- Bootstrap+jfinal實(shí)現(xiàn)省市級聯(lián)下拉菜單
- jfinal與bootstrap的登錄跳轉(zhuǎn)實(shí)戰(zhàn)演習(xí)
- jfinal添加jcaptcha驗(yàn)證碼實(shí)現(xiàn)方法
- Java中JFinal框架動態(tài)切換數(shù)據(jù)庫的方法
相關(guān)文章
微信小程序?qū)崿F(xiàn)下拉刷新和上拉分頁效果的方法詳解
這篇文章主要為大家詳細(xì)介紹了微信小程序動畫是如何實(shí)現(xiàn)下拉刷新和上拉分頁效果的,文中示例代碼講解詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-06-06javascript打印大全(打印頁面設(shè)置/打印預(yù)覽代碼)
打印頁面設(shè)置,打印頁面預(yù)覽在打印過程中經(jīng)常會遇到,網(wǎng)上搜集整理了一些實(shí)用的打印方法與大家分享,感興趣的朋友可以了解下哈2013-03-03js實(shí)現(xiàn)iPhone界面風(fēng)格的單選框和復(fù)選框按鈕實(shí)例
這篇文章主要介紹了js實(shí)現(xiàn)iPhone界面風(fēng)格的單選框和復(fù)選框按鈕,涉及javascript動態(tài)操作頁面元素樣式的相關(guān)技巧,非常美觀大方,需要的朋友可以參考下2015-08-08JS實(shí)現(xiàn)無限級網(wǎng)頁折疊菜單(類似樹形菜單)效果代碼
這篇文章主要介紹了JS實(shí)現(xiàn)無限級網(wǎng)頁折疊菜單(類似樹形菜單)效果代碼,涉及JavaScript基于鼠標(biāo)事件實(shí)現(xiàn)針對頁面元素結(jié)點(diǎn)的遍歷及樣式操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-09-09knockoutjs動態(tài)加載外部的file作為component中的template數(shù)據(jù)源的實(shí)現(xiàn)方法
Knockoutjs 的Components 是一種自定義的組件,它以一種強(qiáng)大、簡介的方式將你自己的ui代碼組織成一種單獨(dú)的、可重用的模塊。接下來通過本文給大家介紹knockoutjs動態(tài)加載外部的file作為component中的template數(shù)據(jù)源的實(shí)現(xiàn)方法,一起看看吧2016-09-09Electron實(shí)現(xiàn)應(yīng)用打包、自動升級過程解析
這篇文章主要介紹了Electron實(shí)現(xiàn)應(yīng)用打包、自動升級過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-07-07webpack4實(shí)現(xiàn)不同的導(dǎo)出類型
這篇文章主要介紹了webpack4實(shí)現(xiàn)不同的導(dǎo)出類型,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04JavaScript 判斷用戶輸入的郵箱及手機(jī)格式是否正確
JavaScript判斷用戶輸入的郵箱格式是否正確、判斷用戶輸入的手機(jī)號格式是否正確,下面有個不錯的示例,感興趣的朋友可以參考下2013-12-12