web-dev-qa-db-fra.com

Comment appeler la fonction javascript lors du chargement de page dans asp.net

Dupliquer possible:
Javascript qui s'exécute après le chargement de la page

j'ai une application dans asp.net 4.0

j'ai javascript pour afficher le décalage de la zone client dans la zone de texte: - `

<script type="text/javascript">
    function GetTimeZoneOffset() {
        var d = new Date()
        var gmtOffSet = -d.getTimezoneOffset();
        var gmtHours = Math.floor(gmtOffSet / 60);
        var GMTMin = Math.abs(gmtOffSet % 60);
        var dot = ".";
        var retVal = "" + gmtHours + dot + GMTMin;
        document.getElementById('<%= offSet.ClientID%>').value = retVal;
    }

</script>

`

Html MarkUp

<asp:HiddenField ID="clientDateTime" runat="server" />
<asp:HiddenField ID="offSet" runat="server" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox></body>

Comment puis-je appeler cette fonction au chargement de la page pour pouvoir afficher le décalage dans la zone de texte?

13
MonaliJ

Appel de la fonction JavaScript sur le code derrière i.e . Sur Page_Load

ClientScript.RegisterStartupScript(GetType(), "Javascript", "javascript:FUNCTIONNAME(); ", true);

Si vous avez UpdatePanel alors essayez comme ça

ScriptManager.RegisterStartupScript(GetType(), "Javascript", "javascript:FUNCTIONNAME(); ", true);

Voir l'article de blog: Comment appeler une fonction javascript à partir du code situé derrière dans asp.net c #

20
Satinder singh
<html>
<head>
<script type="text/javascript">
function GetTimeZoneOffset() {
    var d = new Date()
    var gmtOffSet = -d.getTimezoneOffset();
    var gmtHours = Math.floor(gmtOffSet / 60);
    var GMTMin = Math.abs(gmtOffSet % 60);
    var dot = ".";
    var retVal = "" + gmtHours + dot + GMTMin;
    document.getElementById('<%= offSet.ClientID%>').value = retVal;
}

</script>
</head>
<body onload="GetTimeZoneOffset()">
    <asp:HiddenField ID="clientDateTime" runat="server" />
    <asp:HiddenField ID="offSet" runat="server" />
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</body>
</html>

le point clé à noter ici est que body a un attribut onload. Donnez-lui simplement un nom de fonction et cette fonction sera appelée au chargement de la page.


Vous pouvez également appeler la fonction sur l'événement de chargement de page comme ceci. 

<html>
<head>
<script type="text/javascript">

window.onload = load();

function load() {
    var d = new Date()
    var gmtOffSet = -d.getTimezoneOffset();
    var gmtHours = Math.floor(gmtOffSet / 60);
    var GMTMin = Math.abs(gmtOffSet % 60);
    var dot = ".";
    var retVal = "" + gmtHours + dot + GMTMin;
    document.getElementById('<%= offSet.ClientID%>').value = retVal;
}

</script>
</head>
<body >
    <asp:HiddenField ID="clientDateTime" runat="server" />
    <asp:HiddenField ID="offSet" runat="server" />
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox></body>
</body>
</html>
7
Bilal Fazlani

Placez cette ligne avant la balise de script de fermeture, en écrivant de la mémoire:

window.onload  = GetTimeZoneOffset;

je pense que la question est de savoir comment appeler la fonction javascript sur pageload 

3
Denys Wessels

utilisez votre code dans 

  <script type="text/javascript">
     function window.onload()
       {

        var d = new Date()
        var gmtOffSet = -d.getTimezoneOffset();
        var gmtHours = Math.floor(gmtOffSet / 60);
        var GMTMin = Math.abs(gmtOffSet % 60);
        var dot = ".";
        var retVal = "" + gmtHours + dot + GMTMin;
       document.getElementById('<%= offSet.ClientID%>').value = retVal;

      }
  </script>
0
Manish Nagar