BrunoCheyrou
Messages postés61Date d'inscriptiondimanche 8 décembre 2002StatutMembreDernière intervention27 février 2009
-
28 juil. 2008 à 12:39
BrunoCheyrou
Messages postés61Date d'inscriptiondimanche 8 décembre 2002StatutMembreDernière intervention27 février 2009
-
30 juil. 2008 à 14:27
Bonjour, alors j'explique l'utilité de ma page. Ma page contient une DDL avec la liste des noms, un bouton SUPPRIMER permettant de supprimer un enregistrement. Je souhaiterai que lorsque le contact est supprimé, un message d'alerte de type MsgBox s'affiche avec le message "contact supprimé". Voici mon code de départ :
"DELETE FROM annuaire WHERE Num_auto like ('"
& DropDownList1.SelectedValue &
"')"
)conn.Open()
cmd_delete.Connection = conn
cmd_delete.ExecuteNonQuery()
conn.Close()
MsgBox(
"Contact supprimé"
, MsgBoxStyle.Information,
"Contact supprimé"
)Response.Redirect(
"~/gestion/delete.aspx"
)
'Actualiser la page pour recharger la dropdownlist
End
SubEnd
Class
Donc ici, coté client, la MsgBox provoque une erreur mais côté serveur le contact a bien été supprimé. J'ai essayé de divers facons avec du javascript mais je n'arrive jamais a afficher l'alerte...
BrunoCheyrou
Messages postés61Date d'inscriptiondimanche 8 décembre 2002StatutMembreDernière intervention27 février 2009 28 juil. 2008 à 14:05
Oui merci celà fonctionne dans OnClientClick mais comment peut-on gèrer les conditions avec un OnClientClick car dans une de mes pages, j'ai différent message à afficher selon des conditions.
J'ai essayé de l'inclure directement dans le code pour pouvoir gérer mes conditions avec :
BrunoCheyrou
Messages postés61Date d'inscriptiondimanche 8 décembre 2002StatutMembreDernière intervention27 février 2009 28 juil. 2008 à 14:21
Pas sûr que tu ais vraiment compri.
Dans le code, sans passer par la fenêtre des propriétés, comment s'écrit la syntaxe de Button1.OnClientClick pour afficher une alert en javascript svp ?
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 201137 28 juil. 2008 à 16:01
Bonjour,
Je pense que ce BrunoCheyrouessaie de faire est que si il y a une erreur coté serveur.
Il veut que cette erreur soit mise dans un alert()
Je ne sais plus trop comment mettre en oeuvre ce genre de controle.
Dans des appli asp3 :
On pouvais ecrire dans le flux avant le page un response.write("alert("votre client XYZ n''existe pas dans la base de données"))
Mais cela n'est pas trop propre
Il est peut etre possible de mettre le message dans le form load au retour du postback
Sinon la methode la plus propre est je pense d'utiliser des panels d'ajaxtoolkit par exemple.
Ou autre?
BrunoCheyrou
Messages postés61Date d'inscriptiondimanche 8 décembre 2002StatutMembreDernière intervention27 février 2009 28 juil. 2008 à 16:12
J'ai encore effectué un autre test :
• Page ASPX :
<
script
type
="text/javascript">
function
Alert()
{
javascript:alert(
"Le contact a bien ‚t‚ supprim‚ de la base"
);
}
function
Alert2()
{
javascript:alert(
"2"
);
}
</
script
>
• Page VB (simplement pour effectuer un test que je trouve plutôt fesable avec allo=1 puis ensuite allo=2)
allo = 1
If allo = 1
Then
Button1.OnClientClick =
"Alert()" ' Change la propriété OnClientClick du Button1 en Alert() et fais appel à la fonction Alert() lors du clique sur le bouton
Else : Button1.OnClientClick =
"Alert2()" ' Change la propriété OnClientClick du Button1 en Alert2() et fais appel à la fonction Alert2() lors du clique sur le bouton
End
If
Mais celà ne fonctionne toujours pas... apparament la propriété du boutton ne change pas... ou c'est autre chose mais là j'ai tellement essayer pleins de chose que je ne sais plus par quel chemin passer...
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 28 juil. 2008 à 16:21
Probablement car tu n'as pas bien lu ma réponse ?!
OnClientClick doit être setté très tôt dans le cycle de vie de la page, Page_Load, c'est trop tard. Tu peux le faire dans le Page_PreRender, mais probablement qu'à ce moment tu te retrouves sans les données qui permettent de faire ton if.
Donc tu utilises la deuxième solutions que je t'ai donné, en utilisant les attributs... Avec ça, je pense que ça ira...
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 28 juil. 2008 à 16:34
Moui mais en fait ce que tu veux, c'est modifier le contenu du script alors qu'on est dja entrain d'exécuter la méthode si j'ai bien compris maintenant? Dans ce cas, cette méthode risque de ne pas fonctionner....
Donc tu peux éven. jeter un oeil ici http://www.codeproject.com/KB/webforms/NingLiangSimpleControl.aspx sinon je sèche (asp.net c'est pas encore mon fort )
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 29 juil. 2008 à 01:01
Bonjour,
je te conseille de bien revoir ce qu'est ASP.net.
ASP.net est une technologie qui permet de répondre à des requetes HTTP et c'est tout !
il y a donc 2 parties : le client et le serveur. ASP.net ne s'execute QUE coté serveur, tout le code behind & co s'execute coté serveur ! Donc tu ne peux pas intéragir directement avec le client. ASP.net ne fait que générer une réponse HTTP (généralement du HTML) que le client va lire.
A partir de ce document HTML, le client va l'interpreter et executer le code JavaScript qu'il contient.
Pour ajouter du code JavaScript à une réponse ASP.net il faut utiliser
BrunoCheyrou
Messages postés61Date d'inscriptiondimanche 8 décembre 2002StatutMembreDernière intervention27 février 2009 30 juil. 2008 à 09:28
Merci pour ton aide jesusonline, je me rappele qu'à ma formation j'avais eu ces infos concernant ASP.NET. Cependant nous ne sommes pas aller plus loin étant donné que la formation ne portait que sur l'ASP.NET et VB.NET.
J'ai fais pas mal de recherches afin de pouvoir executer du javascript dans mes pages ASP.NET et plusieurs fois celà parle de RegisterStartupScript mais je ne pige pas complètement sa syntaxe et son utilité.
RegisterStartupScript(type, key, script) ???