begin process at 2012 05 28 06:22:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ASP & ASP.NET

 > 

Archives ASP & ASP.NET

 > 

ASP.net

 > 

Ouvrir une url sur un évenement onclick


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Ouvrir une url sur un évenement onclick

mercredi 7 juillet 2004 à 11:06:41 | Ouvrir une url sur un évenement onclick

bastien30


J'ai créé un classe Rollbutton ayant héritant de ImageButton

Comme on ne peut faire hériter une classe que d1 seule autre classe, je souhaiterais savoir comment créer une propriété NavigateUrl qui serait activée lors d'un évenement Onclick ?

Merci
mercredi 7 juillet 2004 à 17:17:19 | Re : Ouvrir une url sur un évenement onclick

jesusonline

Membre Club Administrateur CodeS-SourceS
tu dois surcharger la methode AddAttributesToRender
j'ai pas le temps maintenant, mais il me semble que j'ai deja posté des exemples sur ce site.
si tu ne trouve pas fais le moi savoir, et j'essaierais de trouver le temps pour t'expliquer


Cyril
jeudi 8 juillet 2004 à 12:19:10 | Re : Ouvrir une url sur un évenement onclick

bastien30

Ok j'ai pigé ton code, en fait tu déclare tous les évenements possibles pour un bouton en faisant ensuite appel a un procédure qui simule du javascript.

Par contre j'ai rien pigé concernant l'appel de la methode onclick !!! :) Comment dois je m'en servir si je reprend ton exemple :

<cc1:ButtonUniqueid="ButtonUnique1" runat="server" onclick= ????? isoneclick="true" />

Bastien30
jeudi 8 juillet 2004 à 13:43:12 | Re : Ouvrir une url sur un évenement onclick

jesusonline

Membre Club Administrateur CodeS-SourceS
essaye ca :

Public Class RollButton
Inherits System.Web.UI.WebControls.ImageButton

Private _NavigateUrl As String
Public Property NavigateUrl() As String
Get
Return _NavigateUrl
End Get
Set(ByVal Value As String)
_NavigateUrl = Value
End Set
End Property

Protected Overrides Sub AddAttributesToRender(ByVal writer As System.Web.UI.HtmlTextWriter)
writer.AddAttribute("Onclick", "javascript:location.href =""" & _NavigateUrl & """;")
End Sub

End Class

apres dans l'aspx tu auras juste à ecrire :

<cc1:Rollbutton id="RB1" runat="server" NavigateUrl="page.aspx"/>

Ainsi si tu cliques sur le controle tu ira sur page.aspx

attention je ne suis pas sur de la syntaxe javascript, je m'en rappellais plus, et j'ai mis ca un peu au hasard, donc si ca marche pas, change javascript:location.href = NavigateUrl par un autre code javascript

@+

Cyril
lundi 12 juillet 2004 à 18:28:30 | Re : Ouvrir une url sur un évenement onclick

bastien30

ca ne marche pas

j'ai codé de la maniere suivante :
writer.AddAttribute("onClick", "javascript:window.href = ' " & Me.NavigateUrl & " ';")

aucun résultat (le fait de mettre des cotes ou des guillemets devant la variable ne change rien j'ai essayé)

j'ai ensuite essayé :
writer.AddAttribute("onClick", "javascript:window.open('" & Me.NavigateUrl & "','self');")

la ca marche...mais dans une nouvelle fenetre malgré le self !

Je craque lol

seb
lundi 12 juillet 2004 à 21:08:30 | Re : Ouvrir une url sur un évenement onclick

jesusonline

Membre Club Administrateur CodeS-SourceS
l'erreur provient donc du javascript ?
si c'est le cas je peux pas faire grand chose pour toi, je connais pas assez bien ce langage, mais si ca peut t'aider, tu peux faire une fonction javascript :
writer.AddAttribute("onClick", "javascript:tafunction('" & Me.NavigateUrl & "');")

dans la function javscript

function tafunction(url)
{
window.href(url)
}

ou un truc du genre. pour rajouter du code javascript, tu peux directement l'ecrire dans le render, ou sinon tu peux ecrire une seule foispour toute ta function javascript meme si tu fais appel plusieurs fois au controle, il faut utiliser la méthode Page.jesaispaskoi (page.Startupscript(key as string, script as string) je crois)
si tu utilises cette derniere méthode, je peux t'aider

@+

Cyril
mardi 13 juillet 2004 à 16:29:35 | Re : Ouvrir une url sur un évenement onclick

bastien30

je n'y arrive pas, j'ai par contre trouvé la méthode HttpContext.Current.Response.Redirect pour changer l'url mais je n'arrive pas a l'utiliser dans la classe de mon bouton

du coup pour l'instant je l'utilise dans une procedure Go appelée sur onclick de mon bouton mais l'url n'est pas dynamique


<STA:RollButton id="button2" onclick="go" runat="server"></STA:RollButton>


sub go(sender As Object, e As System.Web.UI.ImageClickEventArgs)
HttpContext.Current.Response.Redirect("http://www.free.fr")
end sub

:)
mardi 13 juillet 2004 à 20:08:26 | Re : Ouvrir une url sur un évenement onclick

jesusonline

Membre Club Administrateur CodeS-SourceS
a partir de la tu dois pouvoir mettre en url dynamique

je te donne l'idée, faudrais vérifier avec l'intelisens de VS.net pour vérifer les propriétés mais en gros :

<STA:RollButton id="button2" onclick="go" runat="server" Argument="http://tonurl.com"></STA:RollButton>


ensuite tu vas te servir de la variable e

sub go(sender As Object, e As System.Web.UI.ImageClickEventArgs)
HttpContext.Current.Response.Redirect(e.EventArg)
end sub


Si t'as pas VS.net dis le moi et je verifierais les propriétés car je doute que ce que j'ai mis soit bon

j'espere t'avoir aidé

@+

Cyril
mardi 13 juillet 2004 à 20:48:48 | Re : Ouvrir une url sur un évenement onclick

bastien30

Non je n'ai pas VS.NET (j'ai commandé la version éval)
Ca m'interesserai oui de connaitre la syntaxe à l'occase :)


Sinon, j'ai ENFIN réussi a m'en sortir de cette manière :

Public sub LoadUrl(sender As Object, e As System.Web.UI.ImageClickEventArgs)
dim MyButton as string = Ctype(sender, Control).ID
Select Case MyButton
Case "Button1"
Response.Redirect(ResolveUrl("menu1/index.aspx"))
Case "Button2"
Response.Redirect(ResolveUrl("menu2/index.aspx"))


etc...etc..
end Select
end sub


Merci pour ta patience, en esperant pouvoir te dépanner un de ces jours...

@+
Seb
mardi 13 juillet 2004 à 23:23:12 | Re : Ouvrir une url sur un évenement onclick

jesusonline

Membre Club Administrateur CodeS-SourceS
j'ai regardé le code avec un bouton, je viens de voir que s'en était pas un, je te mettrais les modifs à faire en dessous. donc voici le code pour un bouton :

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

Dim s As String = CType(sender, Button).CommandArgument

End Sub

<asp:Button id="Button1" runat="server" Text="Button" commandargument="http://monurl"/>


pour ton cas, je viens de vérifier, ImageButton posséde la propriété CommandArgument, et comme ton controle dérive de ImageButton, il contient aussi commandArgument


<STA:RollButton id="button2" onclick="go" runat="server" CommandArgument="http://tonurl.com"/>


Public sub LoadUrl(sender As Object, e As System.Web.UI.ImageClickEventArgs)
HttpContext.Current.Response.Redirect( CType(sender, RollButton ).CommandArgument)
End Sub

A noter que tu as aussi la propriété CommandName qui fonctionne exactement de la meme maniere

tu peux aussi modifier ces propriétés par le code :

sub page_load(...)


button2.CommandArgument = "http://url"

end sub

J'espere que ce petit bout de code t'aidera :)

Pour VS.net, tu as bien fait de demander une version d'éval, car dans la majorité des cas c'est indispensable, car c'est impossible de connaitre tout les types de la framework, et pour ca l'intellisens c'est le pied

@+

Cyril

1 2

Cette discussion est classée dans : ouvrir, url, classe, évenement, onclick


Répondre à ce message

Sujets en rapport avec ce message

Ouvrir un fichier à partir d'une classe [ par zigxag ] Bonjour,je voudrais ouvrir un fichier texte en asp.net. Sur le net, j'ai trouvé des exemples qui montraient comment faire, mais avec l'instruction Ser Ouvrir un document html dans word [ par juliusius37 ] mailto:S0KARISS@hotmail.comBonjour, voila mon pb je souhaite a partir d'une page en asp,ouvrir word et y afficher le tablea Comment ouvrir un classeur Lotus 123 Version 97 [ par cboulas ] Salut à tous,comment puis-je ouvrir un classeur Lotus 123 97 via donc une page ASP placée sur le net ?Merci d'avanceChris...Web : <a href="http://w Ouvrir une URL [ par Matth_S ] Bonjour,Je voudrais ouvrir un URL et afficher le contenu de la page a l'interieur de la page qui execute le script. Comment dois je faire en VB ?Merci ouvrir une fenetre... [ par SW_87 ] Bonjour , Je souhaite faire un bouton dans une page ASP.NET qui permet d'ouvrir une autre page ASP.NET. Jusque là pas de souci, tout simple : Respons Ouvrir une fenêtre en plein écran [ par systemic_anomaly ] Bonjour à tous, Lorsque je cliques sur un lien de mon datagrid "View more information" une pop up s'ouvre grâce à ceci (dans le property builder du d Ouvrir ma page dans Netscape, Firefox, Eudora.... [ par asp_shamai ] <TD id=HB_Focus_Element vAlign=top width="100%" background="" height=250 UNSELECTAB Syntaxe onClick en vbscript [ par eboutill ] Bonjour à vous, J'ai un peu de mal avec la syntaxe d'un évènement lorsque plusieurs instructions y sont associées et pour l'utilisation de variables. comment passer un tableau (vbscript) dans un onclick [ par eboutill ] Bonjour à vous, je n'arrive pas à passer un tableau dans un onClick. En erreur j'ai variable indéfinie pour "liste". voici mon code: Sub debut(table Avoir l'url de la barre d'adresse [ par lmoktar ] Bonjour, Je cherche à faire une redirection à partir de l'url tapée par le visiteur. Ex : Il tape www.mosite.com/conference et je le redirige vers ww


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,686 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales