您好,登錄后才能下訂單哦!
這篇文章主要介紹了ligerui如何實現子頁面關閉后父頁面刷新以及重新加載,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
1、需求在子頁面處理完成后,在關閉時刷新并重新加載父頁面
$.ajax({ url : '${base.contextPath}/test/test', type : "post", dataType : "json", data : sendata, async: false, success : function (data) { if(data.success){ //刷新父頁面 window.parent.manager.reload(); dialog.close();//關閉dialog }else{ // $.ligerDialog.error(data.messageText); alert(data.messageText); $.ligerDialog.closeWaitting(); window.parent.manager.reload(); dialog.close();//關閉dialog } }, error : function () { $.ligerDialog.closeWaitting(); dialog.close();//關閉dialog } });
關鍵代碼
window.parent.manager.reload(); dialog.close();//關閉dialog
其中manager是父頁面定義grid的變量,例如父頁面是這樣(參照的官網例子)
var manager, g; g = manager = window['ordergrid'] = $("#ordergrid").ligerGrid({
至于為什么不使用$.ligerDialog.error(data.messageText);
而使用alert(data.messageText);
是因為使用他,當后臺出現錯誤時。前臺會多出一個錯誤彈窗,現在沒有解決這個問題,,所以暫時使用alert
后續
經過一段時間,偶然發現可以解決不用alert(),之所以報錯是因為.ligerDialog.error(data.messageText);和.ligerDialog.error(data.messageText);和.ligerDialog.closeWaitting();
window.parent.manager.reload(); dialog.close();//關閉dialog
一起使用了,具體也不知道是什么原因,所以就饒了個彎子,
下面重點來了
通過ligerui源碼發現.ligerDialog.error()、.ligerDialog.error()、.ligerDialog.success()等方法都有回調函數,于是就可以修改成這樣
$.ligerDialog(data.messageText,cc);
下面在寫個方法cc()用來關閉和重新刷新
function cc(){ //刷新父頁面 window.parent.manager.reload(); dialog.close();//關閉dialog }
這樣比用alert顯示更好看些。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“ligerui如何實現子頁面關閉后父頁面刷新以及重新加載”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。