Saut ligne dans variable alert
Ju
-
avion-f16 Messages postés 19252 Date d'inscription Statut Contributeur Dernière intervention -
avion-f16 Messages postés 19252 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je souhaiterais sauter des lignes dans mon alert à partir d'une variable dans laquelle est stockée:
$attention = 'Vous avez réussi à: \n -ajouter nom \n -ajouter prenom';
Seulement le alert(attention) écrit les \n plutôt que de sauter des lignes. si vous savez comment je peux faire pour y parvenir en conservant le passage par variable...
Merci,
Je souhaiterais sauter des lignes dans mon alert à partir d'une variable dans laquelle est stockée:
$attention = 'Vous avez réussi à: \n -ajouter nom \n -ajouter prenom';
Seulement le alert(attention) écrit les \n plutôt que de sauter des lignes. si vous savez comment je peux faire pour y parvenir en conservant le passage par variable...
Merci,
9 réponses
Pour effectuer un saut de ligne avec la méthode alert() il suffit d'insérer les 3 caractères suivants dans le texte à afficher : \\n
...rien ne vaut un bon vieil exemple:
<script>
alert('- message de la ligne 1\\n- Message de la ligne 2');
</script>
NB : vous pouvez remplacer les simples quotes dans la méthode alert() par des doubles quotes, ca marche aussi bien
...rien ne vaut un bon vieil exemple:
<script>
alert('- message de la ligne 1\\n- Message de la ligne 2');
</script>
NB : vous pouvez remplacer les simples quotes dans la méthode alert() par des doubles quotes, ca marche aussi bien
Si tu mets \\n , le premier backslashes annule le caractère spécial qui suit, donc ton script affiche simplement :
1er cas : coté client
le script javascript est inséré directement dans le code source d'une page html, qui s'exécute côté client, alors il faut écrire \n, par exemple :
<html>
<head>
</head>
<body>
<script type='text/javascript'>
alert('- message de la ligne 1\n- Message de la ligne 2');
</script>
</body>
</html>
2nd cas : coté serveur
Le script javascript est inséré dans du code C# ou VB.NET qui s'exécute coté serveur (dans le code behind d'une page ASPX par exemple), alors dans ce cas il faut écrire \\n, par exemple :
using System;
namespace ApplicationTest.UI.Pages
{
public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string script="<script>alert('- message de la ligne 1\\n- Message de la ligne 2');</script>";
this.Page.ClientScript.RegisterStartupScript(this.Page.GetType(), "alert", script);
}
}
}
et bien sûr le code javascript généré chez le client contiendra \n, dans le détail :
<script>alert('- message de la ligne 1\n- Message de la ligne 2');</script>
EN CONCLUSION :
le script coté client ne doit contenir que \n, alors que côté serveur (la majeure partie de la programmation se fait quand même de ce coté) en C# et VB.NET il doit contenir \\n... pour ce qui est des autres langages majeurs coté serveur (PHP, JAVA, etc...) je ne suis pas spécialiste mais certainement que \n échoue et qu'il faut le concaténer avec un symbole précisant au compilateur que l'on souhaite générer à la volée du javascript contenant uniquement la séquence \n
J'espère avoir éclairé l'utilisation de la méthode javascript alert() cotés client/serveur
@++
Toutes mes excuses pour cette perte de temps.
PS: histoire de me déculpabiliser un peu, tu aurais quand même pu mettre la partie qui montre que c'est une chaine dans un autre langage de programmation, en VB.net : ;-)