2012-05-11 4 views
-1

Une raison pour le Javascript ne se déclenche pas?Javascript ne se fait jamais appeler

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent"> 
<script type="text/javascript"> 

function ChangeDisplay() 
{ 
    alert("Changing"); 

    document.getElementById('warningDiv').innerHTML = "<h1>Change Text</h1>"; 
    setTimeout(finalize,6000); 
} 

function finalize() 
{ 
    alert("Done"); 
    document.getElementById('warningDiv').innerHTML="<h1>Done</h1>"; 
}​ 
</script> 

<h2> 
    Welcome to ASP.NET! 
</h2> 
<p> 
    <div id="warningDiv">Hello World</div> 
    ​ 
</p> 
<script> 
    window.onload = setTimeout(ChangeDisplay, 3000); 
</script> 

+2

où 'WarnTheUser' est-il défini? –

+0

Fait une erreur lors de la frappe, a changé l'original. Ne fonctionne toujours pas –

+0

Est-ce que 'window.onload = setTimeout (ChangeDisplay, 3000);' be 'window.onload = setTimeout (" ChangeDisplay() ", 3000);' ... pas vraiment sûr de moi, mais semble drôle par rapport à http://www.w3schools.com/js/js_timing.asp – Chase

Répondre

3

Quel est le motif du Javascript ne se déclenche pas?

Oui, WarnTheUser n'existe pas et les autres fonctions ne sont pas appelées.

Modifier: Peut-être un problème de navigateur, vous pouvez utiliser jQuery, peut-être cela fait une différence:

$(document).ready(function() { setTimeout(ChangeDisplay, 3000) }); 

ou

$(window).load(function() { setTimeout(ChangeDisplay, 3000) }); 

Je ne pense pas que ce soit un ASP. Problème NET. Vous n'avez pas montré beaucoup de code ASP.NET de toute façon, utilisez-vous Ajax?

+0

désolé le fond censé appeler le "ChangeDisplay" ... voir les modifications sur l'original –

+0

@Developer: Vous pouvez essayer jQuery (édité ma réponse). –

0

SOLUTION

Eh bien, il semble que

<script type="text/javascript">  
    window.onload = setTimeout(ChangeDisplay(), 3000); 
</script> 

fonctionne, donc MERCI TOUT pour les différents conseils. Tous ... sauf celui qui a fait le "-1" sur le poteau.
Je n'ai jamais compris pourquoi les gens font ça.

+1

Cela n'a aucun sens. 'ChangeDisplay' renvoie void, donc bien sûr dans ce cas, il est déclenché immédiatement (pas dans 3 secondes) et il passe' void' à 'setTimeout' ... –

Questions connexes