2016-10-09 8 views
0

クライアントからコントローラをリフレッシュする方法として混乱します。私は7秒後に私のページをリフレッシュするコントローラのActionMethodを打つために私のクライアントから電話を送る。コールはコントローラに到達し、ログは作成されますが、リフレッシュは実行されません。コントローラがAJAXからリフレッシュしない

Ajax ControllerのActionMehtodとRefresh全体のコントローラ/ DOMを呼び出すように呼び出します。

<script> 
    $.get("@Url.Action("Refresh","Driver")",function(data){ 
    $("#View1").html(data); 
    }); 
    alert("Refresher ActionResult Exit"); 
</script> 

更新のActionResultメソッドはそれに添付なしビューで、7秒後に更新を呼び出します。

public ActionResult Refresh() 
    { 
     logger.AddLog("PAGE Refresh Set to 7 sec"); 
     Response.AddHeader("Refresh", "7"); 
     logger.AddLog("Returning From Refresher Function"); 
     return View(); 
    } 

答えて

1

私は2つの異なるリフレッシュ方法が混乱していると思います。

ページの一部(#View1)を7秒ごとに更新する場合は、_Layout.cshtmlのjavascriptをsetInterval()で使用するのが最善の方法です。この状況では、リフレッシュヘッダーは不要です。

7秒ごとにページ全体を更新する場合は、ビューからResponse.AddHeader()を使用するか、<meta http-equiv="refresh" content="7">_Layout.cshtmlに入れてください。その後、JavaScriptは必要ありません。

関連する問題