IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

asp.net MobilePage & javaScript


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 8
    Par défaut asp.net MobilePage & javaScript
    salut,
    j'ai crée une page asp.net mobile avec les controles mobile et tous ce qu'il faut. puisque mon objectif est de faire appel a la technologie ajax (supportée par IE mobile 6 le browser que je vise) je veux tester un simple javascript dans une MobilePage. Ca n'a pas marché voila le code de la page et de l'erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <%@ Page Language="C#" AutoEventWireup="true" Inherits="DemoAjax.Acceuil" Codebehind="Acceuil.aspx.cs" %>
    <%@ Register TagPrefix="mobile" Namespace="System.Web.UI.MobileControls" Assembly="System.Web.Mobile" %>
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <body>
    <script type="text/javascript">
    function write()
    {
        alert("888888888888888888888");
    }
    </script>
     
        <mobile:Form id="Form1" runat="server" >
            <mobile:Label ID="Label1" Runat="server"> USE CASE : </mobile:Label>
            <mobile:SelectionList ID="SelectionList1" Runat="server" OnSelectedIndexChanged="write();">
            <Item Text="Edit" Value="edit" />
            <Item Text="View" Value="view" />
            </mobile:SelectionList>
        </mobile:Form>
    </body>
    </html>

    erreur :
    CS1026: ) attendue
    Ligne 60 : <mobile:SelectionList ID="SelectionList1" Runat="server" OnSelectedIndexChanged="write();">

    je me pose la question est il possible d'injecter du javaScript coté client dans les MobilePage ??

  2. #2
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Bonjour,

    Normal que ça ne fonctionne pas l'EventHandler SelectedIndexChanged est prévu pour une méthode serveur, pas cliente en Javascript

    Je t'invite à consulter cette doc.

    En espérant t'avoir aidé.

  3. #3
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 8
    Par défaut
    merci pour votre réponse Nicolas maintenant que vous me le dite ça me semble évident.
    Seulement j'ai pas trouvé l'évènement onclientclick () donc comment faire pour déclencher un javaScript coté client ??
    je compte utilisé la technologie Ajax il me faut une solution ou alors Ajax dans une mobilePage = impossible ??

  4. #4
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Bonjour,

    Je ne suis absolument pas expert en ASP.NET Mobile, mais de ce que j'ai pu lire, tu peux procéder comme ceci pour utiliser le Javascript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Test_JavaScript2_CSharp.aspx.cs"
        Inherits="wap_Test_JavaScript2_CSharp" Debug="true" %>
     
    <%@ Register TagPrefix="mobile" Namespace="System.Web.UI.MobileControls" Assembly="System.Web.Mobile" %>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <body>
        <mobile:Form ID="Form1" Runat="server">
            <mobile:DeviceSpecific ID="DeviceSpecific3" Runat="server">
                <Choice Filter="supportsJavaScript" Xmlns="http://schemas.microsoft.com/mobile/html32template">
                    <ScriptTemplate>
     
                        <script type="text/javascript">
                            function ShowTypedText(txt1, l1)
                             {
                              document.getElementById(l1).innerHTML = document.getElementById(txt1).value.length; 
                             }
                        </script>
     
                    </ScriptTemplate>
                </Choice>
            </mobile:DeviceSpecific>
            <mobile:Panel ID="Panel1" Runat="server">
                <mobile:DeviceSpecific ID="DeviceSpecific1" Runat="server">
                    <Choice Xmlns="http://schemas.microsoft.com/mobile/html32template">
                        <ContentTemplate>
                            <asp:Label ID="Label1" runat="server" />
                            </br>                    
                            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                       </ContentTemplate>
                    </Choice>
                </mobile:DeviceSpecific>
            </mobile:Panel>
        </mobile:Form>
    </body>
    </html>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public partial class wap_Test_JavaScript2_CSharp : System.Web.UI.MobileControls.MobilePage
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            System.Web.UI.WebControls.TextBox tBox1 = Panel1.Content.FindControl("TextBox1") as System.Web.UI.WebControls.TextBox;
            System.Web.UI.WebControls.Label l1 = Panel1.Content.FindControl("Label1") as System.Web.UI.WebControls.Label;
            tBox1.Attributes.Add("onkeyup", "javascript:ShowTypedText('" + tBox1.ClientID + "','" + l1.ClientID + "')");
        }
    }
    A noter l'utilisation de la balise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <Choice Filter="supportsJavaScript">
    Tu devrais consulter MSDN ou des tutoriels sur ASP.NET Mobile.

    En espérant t'avoir aidé.

  5. #5
    Membre régulier
    Inscrit en
    Mars 2010
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 8
    Par défaut
    Ce que je trouve bizarre dans cet exemple le fait d'utiliser des controles asp autre que les controles mobile. je croyais que dans une MobilePage on ne peut utiliser que des controles mobile provenant de System.Web.UI.MobileControls.
    si c'est le cas alors on pourrais utiliser le controle asp:button et onclientclick() event handler qui va avec ??

  6. #6
    Membre Expert
    Avatar de Nicolas Esprit
    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Février 2010
    Messages
    1 467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 1 467
    Par défaut
    Non, il est possible d'utiliser des contrôles ASP.NET standard dans une MobilePage, mais l'utilisation doit être restreinte (je rappelle que je ne suis pas expert dans le domaine ). Tu peux par exemple utiliser une Table standard comme expliqué ici.

    Concernant ton problème, ce bout de code simple te montre qu'il est possible d'utiliser le Javascript.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    <mobile:Form id="Form1" runat="server" >
            <mobile:Label ID="Label1" Runat="server" Font-Bold="True">Student Name:</mobile:Label>
            <mobile:TextBox ID="txtStName" Runat="server"></mobile:TextBox>
            <mobile:Command ID="Command1" Runat="server" >Get Info</mobile:Command>
            <mobile:Command ID="Command2" Runat="server">Client Event</mobile:Command>
            <mobile:Panel ID="Panel1" Runat="server">
                <mobile:DeviceSpecific ID="DSP1" Runat="server">
                    <Choice Filter="isHTML32" Xmlns="http://schemas.microsoft.com/mobile/html32template">
                        <ContentTemplate>
                        <asp:CheckBox ID="chkBox" runat="server" Text="CheckBox Control" />
                        <Script language="javascript" for="window" event="onload">
                                window.Form1.Command1.onclick = ShowMsg;
                                function ShowMsg(e)
                                {
                                    alert("Msg!");
                                }
                            </Script>
                            <Script language="javascript" for="Command2" event="onclick">
                                alert("Msg!");
                            </Script> 
                        </ContentTemplate>
                    </Choice>
                </mobile:DeviceSpecific>
            </mobile:Panel>
        </mobile:Form>
    Après, à toi de te documenter sur le sujet. Ou d'espérer qu'un expert en développement mobile tombe sur ton post

Discussions similaires

  1. [ASP.NET] Exécuter fonction Javascript
    Par mod6991 dans le forum ASP.NET
    Réponses: 11
    Dernier message: 20/12/2007, 19h02
  2. [ASP.NET] Exécuter fonction Javascript
    Par mod6991 dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 06/12/2007, 17h53
  3. Réponses: 3
    Dernier message: 24/07/2007, 14h06
  4. [Asp.Net] exécuter fonction javascript
    Par ager1912 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 20/03/2007, 18h22
  5. Réponses: 12
    Dernier message: 23/02/2007, 15h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo