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 :

ERREUR Aprés Utilisation de <iframe>


Sujet :

ASP.NET

  1. #1
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut ERREUR Aprés Utilisation de <iframe>
    Bonjour,

    je voulais afficher un document html dans ma page asp.net et j'ai réussi en utilisant <iFrame> mais une fois la page affichée, tous les boutons de la page ne marchent plus et me renvoi cette erreur...

    Argument de publication ou de rappel non valide.
    La validation d'événement est activée via <pages enableEventValidation="true"/> dans la configuration ou via <%@ Page EnableEventValidation="true" %> dans une page.
    Pour des raisons de sécurité, cette fonctionnalité vérifie si les arguments des événements de publication ou de rappel proviennent du contrôle serveur qui les a rendus à l'origine.
    Si les données sont valides et attendues, utilisez la méthode ClientScriptManager.RegisterForEventValidation afin d'inscrire les données de publication ou de rappel pour la validation.
    je ne peux plus accèder au codebehind via ces boutons, ce qui me pose quelques soucis... SI quelqu'un a une idée, je suis preneur ! merci

  2. #2
    Membre chevronné
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Par défaut
    N'utilise pas les iframes, c'est même pas compatible sur tous les navigateurs.

  3. #3
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut
    moué mais cela m'arangais bien... sinon est ce que tu peux me donner un exemple pour réaliser la même fonction mais avec un master page ou un usercontrol comme j'ai actuellement...

  4. #4
    Membre chevronné
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Par défaut
    Essai ça.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    //Evenement sur le clique de ton bouton.
    protected void bt_Click(object sender, EventArgs e)
            {
                //Charge ton controle dynamiquement
    Control featuredProductUserControl = LoadControl("../MonFolder/MonUserControl.ascx");       
     
    //ajoute le controle dans un placeHolder.
    //il faut que tu créer un placeHolder dans ta page.
    monPlaceHolder.Controls.Add(featuredProductUserControl);
     
     
     }

  5. #5
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut
    Voila mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
                    Control featuredProductUserControl = LoadControl("\\FR\\DOCUMENTS\\RESULT\\2006033109494727800000.html");
     
                    monPlaceHolder.Controls.Add(featuredProductUserControl);
    masi cela me renvoi l'erreur :

    Aucun fournisseur de générations n'est inscrit pour l'extension '.html'. Vous pouvez en inscrire un dans la section <compilation><buildProviders> de machine.config ou web.config. Vérifiez la présence de l'attribut BuildProviderAppliesToAttribute incluant la valeur 'Web' ou 'All'.

  6. #6
    Membre chevronné
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Par défaut
    LoadControl permet de charger des UserControl, c'est à dire des fichiers d'extensions .acsx

    Ton fichier Html n'est pas un user control.

  7. #7
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut
    ah, j'ai du me melanger des mes explications, c'est seulement un fichier .html que je souhaite afficher dans ma page... cela paraît seimple pourtant..

  8. #8
    Membre chevronné
    Inscrit en
    Octobre 2005
    Messages
    400
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 400
    Par défaut
    Fait de l'Ajax :

    Ajoute ce morceau de code dans ton aspx.

    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    <script language="javascript" type="text/javascript">
     
    //Créer un composant de type XMLHTTPRequest, afin d'effectuer une requête côté serveur.
    function getXhr()
    {
        var xhr = null; 
            if(window.XMLHttpRequest) // Firefox et autres
                xhr = new XMLHttpRequest(); 
            else if(window.ActiveXObject){ // Internet Explorer 
            try {
                    xhr = new ActiveXObject("Msxml2.XMLHTTP");
                    xhr.overrideMimeType('text/xml');
            } catch (e) {
                     xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
            }
    				else { // XMLHttpRequest non supporté par le navigateur 
    				   alert("AJAX non supporté."); 
    				   xhr = false; 
            } 
            return xhr
    }
     
    //Effectue la requête HTTP.
    function goAjax()
    {
        var xhr = getXhr()
        if(xhr)
        {
        // On définit ce qu'on va faire quand on aura la réponse
        xhr.open("GET","MaPage.html?d="+getTimeForAjax(),false);
        xhr.send('');
    	    try {
     
    	       document.getElementById('mondiv').innerHTML = xhr.responseText;
            }
            catch (e) 
            {
                 alert("Une erreur est survenue");
            }	
        }
    }
     
     
    //Crée un random pour que le navigateur ne se serve pas du cache.
    function getTimeForAjax()
    {
        today = new Date();
     
        heures = today.getHours();
        minutes = today.getMinutes();
        seconds = today.getSeconds();
     
        aleatoire = Math.round((Math.random()*1000000000));
     
        now = +heures+minutes+seconds+ aleatoire;
     
        return now; 
    }
     
     
    </script>
    remplace evidement MaPage.html par le nom de ta page.

    Ensuite définit l'attribut OnClientClick de ton boutton à "goAjax()".

  9. #9
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut
    je n'ai pas réussi en Ajax... il me remonte des erreurs

  10. #10
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2004
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 270
    Par défaut
    J'ai eu le même problème sauf que moi c'était justement en chargeant mes pages via AJAX.

    Par contre, ça marchait bien avec les iframes.

    Peux tu nous montrer comment tu t'y prends pour charger ta page html dans l'iframe.
    c'est en code behind ou en javascript?
    Moi j'avais fait ça coté client

  11. #11
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut
    j'ai abandonné cette métode car je ne pouvais plus utiliser de boutons suite au chargement de la page via le Iframe.

    Pour faire les test j'utilisé simplement sur ma page asp la balise <iframe></iframe>

  12. #12
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2004
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 270
    Par défaut
    De quelle méthode parles-tu? Ajax?

    Est-ce que ça fonctionne maintenant? Je ne comprends pas bien ce que tu veux dire.

  13. #13
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut
    Non la méthode des iframe. cela me bloquait et renvoyé le message d'erreur que j'ai posté au début de cette discussion...

    je voudrais juste afficher une page HTML dans une partie délimitée de ma page asp.net, et cela ne marche pas encore

  14. #14
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut
    Comment as tu fais en Ajax pour charger un contenu HTML ?

  15. #15
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2004
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 270
    Par défaut
    C'est bizarre car moi j'ai réussi à le faire.
    Charger soit des pages HTML ou ASPX et ça fonctionnait très bien.

    Malheureusement, je ne connais pas la raison qui provoque ces erreurs.

  16. #16
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut
    avec les iframe ? ou avec Ajax ?

  17. #17
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2004
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 270
    Par défaut
    Chez moi ça marche bien avec les iframes que je remplis avec des pages aspx.
    Et je fais ça en javascript.

  18. #18
    Membre éclairé
    Inscrit en
    Février 2006
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 241
    Par défaut
    Pourrais tu me donner un exemple svp, c'est tres frustrant, je n'ai que cela à terminer et cela ne marche pas ...

    merci beaucoup

  19. #19
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2004
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2004
    Messages : 270
    Par défaut
    donc en javascript comme je t'ai dit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    window.frames['maFrame'].location = 'default.aspx';

Discussions similaires

  1. [Débutant] erreur après l'utilisation de gifplayer
    Par rayba89 dans le forum Interfaces Graphiques
    Réponses: 4
    Dernier message: 13/09/2011, 13h27
  2. [dll] libérer une dll apres utilisation
    Par polo54 dans le forum API standards et tierces
    Réponses: 12
    Dernier message: 11/07/2009, 22h48
  3. [FB] installation et apres? utilisation ???
    Par vad dans le forum Débuter
    Réponses: 7
    Dernier message: 17/02/2005, 09h55
  4. Surcharger le message d'erreur après un OnException
    Par Tirlibibi dans le forum XMLRAD
    Réponses: 2
    Dernier message: 24/04/2003, 11h42

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