2016-10-09 8 views
0

Ich bin verwirrt, wie ein Controller von meinem Client zu aktualisieren. Ich sende einen Anruf von meinem Kunden, um eine ActionMethode in der Steuerung zu treffen, die meine Seite nach 7 Sekunden aktualisiert. Der Anruf wird an den Controller gesendet, Protokolle werden erstellt, aber die Aktualisierung findet nie statt.-Controller Refreshing nicht von AJAX

Ajax Call Controller des ActionMehtod und Aktualisieren ganze Controller/DOM zu treffen.

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

Refresh Action Methode ruft nur Refresh nach 7 Sekunden, ohne Aussicht auf sie angehängt:

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

Antwort

1

Ich glaube, Sie verwechseln zwei verschiedene Aktualisierungsmethoden.

Wenn Sie einen Teil einer Seite (# View1) alle 7 Sekunden aktualisieren möchten, verwenden Sie am besten JavaScript in _Layout.cshtml mit setInterval(). Ein Refresh-Header ist in dieser Situation nicht erforderlich. Wenn Sie die gesamte Seite alle 7 Sekunden aktualisieren möchten, verwenden Sie eine Response.AddHeader() aus Ihrer Sicht oder <meta http-equiv="refresh" content="7"> in _Layout.cshtml und dann ist kein Javascript erforderlich.

Verwandte Themen