esc_js( string $text )
Échappe les guillemets simples, le caractère spécial & et traite / enlève les fins de lignes.
Description
Échappe un texte pour l'affichage en javascript. Utilisée par exemple pour l'attribut onclick="" d'une balise HTML.
Paramètre
$text
(string) (Requis) Le texte à échapper.
Retourne
(string) Le texte échappé.
Structure de la fonction esc_js()
Définie dans le fichier wp-includes/formatting.php à la ligne 4470 :
function esc_js( $text ) {
$safe_text = wp_check_invalid_utf8( $text );
$safe_text = _wp_specialchars( $safe_text, ENT_COMPAT );
$safe_text = preg_replace( '/(x)?0*(?(1)27|39);?/i', "'", stripslashes( $safe_text ) );
$safe_text = str_replace( "\r", '', $safe_text );
$safe_text = str_replace( "\n", '\\n', addslashes( $safe_text ) );
/**
* Filters a string cleaned and escaped for output in JavaScript.
*
* Text passed to esc_js() is stripped of invalid or special characters,
* and properly slashed for output.
*
* @since 2.0.6
*
* @param string $safe_text The text after it has been escaped.
* @param string $text The text prior to being escaped.
*/
return apply_filters( 'js_escape', $safe_text, $text );
}
Fonctions et Hook utilisés par esc_js()
js_escape
Filtre une chaîne nettoyée et échappée pour la sortie en javascript.
wp_check_invalid_utf8()
Vérifie si les caractères d'une chaîne sont bien au format UTF-8.
_wp_specialchars()
Convertie certains caractères spéciaux en entités HTML.
apply_filters()
Appel les fonctions qui ont été attaché à un filtre (hook).
Où trouver la fonction esc_js()
dans le CMS Wordpress
Exemple
<input type="text" value=" echo esc_attr( $instance['input_text'] ); ?>" onfocus="if ( this.value == ' echo esc_js( $instance['input_text'] ); ?>') { this.value = ''; }" name="email">
Sources
Codex Wordpress : esc_js()
Autres fonctions dans le même fichier : wp-includes/formatting.php