2014-09-26 206 views
0

我有這樣的一個Ajax響應代碼如下信息顯示在頁面重載,頁面重新加載後不工作

function click_delete_reply(){ 
    if ((ajMsgDel.readyState == 4) && (ajMsgDel.status == 200)) { 
     var restxt = ajMsgDel.responseText; 
     if (restxt == "success") { 
      location.reload(); 
      display_messagesuccess(
       "Message Delete has been successfully performed!"); 
     } 
    } 
} 

我需要Ajax響應成功後重新加載頁面,然後我需要寫一個'div'中的消息。但在這裏顯示消息後,只有它執行頁面加載。我能做些什麼來克服這一點?請幫幫我!

+0

因爲您的js在reload()之後不再運行,所以您無法在頁面重新加載後編寫消息。 – doniyor 2014-09-26 07:01:29

+0

那麼我該如何解決這個問題哥們? @ doniyor – androidGenX 2014-09-26 07:02:16

+0

爲什麼不先顯示消息然後重新加載?順序沒有什麼不同,因爲你的ajax工作成功了。 – doniyor 2014-09-26 07:05:12

回答

0

你應該做這裏由於腳本每次加載一個頁面加載沒有辦法重新加載頁面後,您可以顯示腳本消息的消息是

1. Instead of Ajax Call give a server request and do the server side processing. 
a) If the job is done successfully just send the message as the request parameter. Read that message and display where ever you want. 
b) If the job fails then just return the values you need as response back to the page and display them where they should be. 

。您可以顯示消息然後重新加載頁面。或者按照我上面提到的方式進行。

+0

不能做夥計,因爲它在不同的基礎上工作!我該如何克服這一點?有任何想法嗎?? – androidGenX 2014-09-26 07:10:21

+0

你可以像'?msg = This-is-message'一樣傳遞一個參數。然後在UI上顯示此消息 – 2014-09-26 07:14:07

1

好的,很好,然後嘗試一些喜歡這個。

重新加載之前,將一些參數附加到您的網址。有了這個,你可以在服務器端知道它是否是從你的ajax重新加載,並像「重新加載」一樣返回一個msg。然後你這樣做:

$(function(){ 
    //if the param in url is called "reloaded" 
    // then show message 

}); 

$(function(){});與「DOM已準備好」相同

對不起,我在公交車上,無法寫多少。隨意問。