2013-06-19 28 views
5

Próbuję zbudować stronę internetową w MVC 4.0 i knockoutMVC, która używa jQuery do aktualizacji elementów na stronie, strona będzie uruchamiana z sieci Azure, kod, który mam działa dobrze, kiedy uruchom go lokalnie, jednak kiedy przesyłam do lazuru, w widoku nie ma żadnych aktualizacji. Czy jest jakikolwiek powód, aby tak się stało? Obecnie korzystam z bezpłatnej wersji próbnej Azure.Używanie Jquery do aktualizacji strony internetowej Azure

Wyciągnąłem cały kod i zostawiłem sobie tylko stronę hello, która aktualizuje czas na stronie co 4 sekundy. Jednak nawet to nie zadziała.

<script type="text/javascript"> 
var myVar = setInterval(function() { UpdateTime(); }, 4000); 

$(document).ready(function UpdateTime() { 
    var now = new Date(); 
    $("#time").text(now.toLocaleTimeString()); 
}); 
</script> 
<h2>HelloWorld</h2> 
<label id="time"></label> 

Odpowiedz

1

W pewnym sensie działa lokalnie, ale aktualizuje tylko raz. Nie jestem do końca pewna, dlaczego działa nawet przy pierwszym trafieniu, więc może ktoś inny mógłby dodać tutaj więcej. Polecam zdefiniowanie funkcji aktualizacji poza zdarzeniem gotowym do druku i ustawienie setInterval tylko w tym momencie, kiedy twój element ma być załadowany. Możesz także uniknąć znalezienia elementu co cztery sekundy. Nie jestem pewien, czy to odpowiada na twoje pytanie, ale nie działa to w pełni lokalnie.

var myVar, $time; 
function UpdateTime() { 
    var now = new Date(); 
    $time.text(now.toLocaleTimeString()); 
} 
$(document).ready(function(){ 
    $time = $("#time"); 
    myVar = setInterval(UpdateTime, 4000); 
}); 
Powiązane problemy