2013-06-19 10 views
5

Sto provando a creare un sito Web in MVC 4.0 e knockoutMVC che utilizza jQuery per aggiornare gli elementi in una pagina, il sito Web verrà eseguito da Web di Azure, il codice che funziona funziona correttamente quando eseguirlo localmente, tuttavia quando carico in azzurro non si verificano aggiornamenti sulla vista. C'è qualche ragione per cui ciò accada. Sto attualmente utilizzando la versione di prova gratuita di Azure.Utilizzo di Jquery per aggiornare una pagina Web di Azure

Ho tirato fuori tutto il codice e mi sono lasciato solo con una semplice pagina del mondo che aggiorna l'ora sulla pagina ogni 4 secondi. Tuttavia anche questo non funzionerà.

<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> 

risposta

1

In qualche modo, sembra funzionare localmente, ma aggiorna solo l'ora una volta. Non sono esattamente sicuro del motivo per cui funziona anche sul primo hit, quindi forse qualcun altro potrebbe aggiungere altro qui su questo. Consiglierei di definire la funzione di aggiornamento al di fuori dell'evento pronto per il documento e di impostare solo setInterval in quel punto, quando il tuo elemento è garantito per essere caricato. Potresti anche evitare di trovare l'elemento ogni quattro secondi. Non sono sicuro che questo risponda alla tua domanda, ma non ha funzionato pienamente per me localmente.

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