Ajouter un commentaire

fredericmazue

Salut, c'est encore moi ;)

Ce matin je n'avais pas beaucoup de temps, alors je n'ai pas été très explicite. Là je vais essayer de t'aider plus concrètement. Un des gros points fort de ASP .Net 2.0 c'est qu'il découple la conception des pages de la logique. Donc tu n'as normalement pas besoin de mettre du Javascript dans tes pages. C'est le framework qui se charge de générer le Javascript pour toi. Pour ça le Framework voit une page en deux entités. D'abord la page elle même (balise HTML, etc) et une classe .Net qui dérive de la classe System.Web.UI.Page.

Quand tu crées une page Web sous Visual, celui-ci te génère d'un coup la pagesWeb et le code de la lcasse (en VB ou C# comme tu veux). Pour te rendre ça plus concret on va prendre un exemple. Tu veux que dans ta page (default.aspx) il y ait 3 contrôles. 2 TextBox et un Bouton. Tu veux qu'au chargement de la page la deuxième TextBox ait le focus et que si tu cliques le bouton, le focus passe à la première TextBox.
C'est tout simple . D'abord tu déposes les contrôles sur la page web. Ca te donne ceci comme code:

%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
        <asp:Button ID="Button1" runat="server" Text="Button" /></div>
    </form>
</body>
</html>

Là dedans, pas de Javascript du tout ainsi que tu le vois.

Maintenant tu vas dans le fichier default.aspx.vb (si tu travailles avec Visual Basic). C'est le fichier qui contient le code de la classe .Net associée à la page. Et là tu ajoutes deux gestionnaires d'événements. Un pour le chargement de la page, un autre pour le click du bouton. Pour faire ça utilise les boîtes listes déroulantes juste au dessus de l'éditeur.
Après tu n'as qu'à ajouter un peu de code Visual Basic pour avoir ceci:

[code)
Partial Class _Default
Inherits System.Web.UI.Page

Protected Sub form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles form1.Load
SetFocus(TextBox2)
End Sub

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
TextBox1.Focus()
End Sub
End Class
[/code]

en fait les deux seules lignes ajoutées manuellement sont

SetFocus(TextBox2)
TextBox1.Focus()

Comme tu vois c'est tout simple, exit Javascript dans les pages, et ça marche ;)

Voilà en espérant avoir un peu clarifié ASP .Net 2.0 et t'avoir aidé

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 H  H  U   U  Y   Y  M   M  Y   Y 
H H U U Y Y MM MM Y Y
HHHH U U Y M M M Y
H H U U Y M M Y
H H UUU Y M M Y