Comment insérer une nouvelle ligne dans une boîte d'alerte JavaScript ?
Avez-vous une idée de la compatibilité entre les navigateurs ?
Comment insérer une nouvelle ligne dans une boîte d'alerte JavaScript ?
Si j'utilise \n dans mon message d'alerte, le dialogue ne s'affiche même pas dans l'application ASP.NET. Est-ce que Microsoft a un problème avec cela :)
Pour Le chasseur de crocodiles, en ASP.NET derrière les alertes de code, vous devez utiliser des caractères d'échappement, ce qui signifie Registerblabla(bla,bla, "alert('hi \\nhi deuxième ligne')")
Vous devez utiliser des guillemets doubles pour afficher des caractères spéciaux tels que \n \t etc... dans la boîte d'alerte js pour exemple dans php script :
$string = 'Hello everybody \n this is an alert box';
echo "<script>alert(\"$string\")</script>";
Mais un deuxième problème possible arrive lorsque l'on veut afficher une chaîne de caractères spécifiée entre guillemets.
voir texte du lien
Si la chaîne de caractères est entourée de guillemets ("), PHP interprétera d'autres séquences d'échappement pour les caractères spéciaux.
séquences d'échappement \n est transformé en caractère échappé 0x0A ASCII et ce caractère n'est pas affiché dans la boîte d'alerte. La solution consiste à échapper cette séquence spéciale :
$s = "Hello everybody \\n this is an alert box";
echo "<script>alert(\"$string\")</script>";
si vous ne savez pas comment la chaîne est enfermée, vous devez transformer les caractères spéciaux en leurs séquences d'échappement.
$patterns = array("/\\\\/", '/\n/', '/\r/', '/\t/', '/\v/', '/\f/');
$replacements = array('\\\\\\', '\n', '\r', '\t', '\v', '\f');
$string = preg_replace($patterns, $replacements, $string);
echo "<script>alert(\"$string\")</script>";
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
1 votes
PHP_EOL a fonctionné pour moi alors que beaucoup d'autres réponses ici ne l'ont pas fait.....