Heim  >  Artikel  >  Web-Frontend  >  Die Escape-Funktion löst das Problem verstümmelter Zeichen bei der Ajax-Übertragung in js_javascript-Fähigkeiten

Die Escape-Funktion löst das Problem verstümmelter Zeichen bei der Ajax-Übertragung in js_javascript-Fähigkeiten

WBOY
WBOYOriginal
2016-05-16 16:32:341427Durchsuche

Das Beispiel in diesem Artikel beschreibt, wie die Escape-Funktion das Problem verstümmelter chinesischer Zeichen bei der Ajax-Übertragung in js löst. Es wird als Referenz für alle freigegeben. Die spezifische Methode ist wie folgt:

1. Problembeschreibung:

Ursprünglich codierte Escape () in den Spezialeffekten der Webseite Chinesisch gemäß dem Zeichensatz ISO-8859-1, sodass die Anforderungsparameter direkt über request.getparameter () abgerufen werden können. Später wird Javascript jedoch Escape ( ) ) wurde durch Unicode-Zeichensatzkodierung ersetzt. Daher können die Anforderungsparameter nicht direkt im JSP-Tutorial und im Servlet abgerufen werden.

2. Lösung:

1. Zuerst kodiert escape() die chinesischen Zeichen zweimal. Wenn Sie den Parameternamen übergeben möchten und der Wert „Hallo“ ist, lautet das Format der URL....name=escape(escape(„Hallo ") ), auf diese Weise können die codierten Parameter in request.getparameter() abgerufen werden.

2. Da die erhaltenen Parameter das Format %u4f60%u597d haben, können sie nicht mit dem regulären urldecoder.decode() dekodiert werden. Glücklicherweise gibt es auf der Welt genügend talentierte Leute, um eine Werkzeugklasse direkt im Internet zu finden ., kann die Kodierung und Dekodierung im Escape()- und unescape()-Stil in Javascript realisieren

Code kopieren Der Code lautet wie folgt:

Im obigen Beispiel haben wir nur die Escape-Funktion auf Chinesisch verwendet und die Syntax lautet wie folgt:

Definition und Verwendung:

Die Funktion escape() kodiert einen String so, dass er auf allen Computern gelesen werden kann.
Syntax:

Escape(string)-Parameterbeschreibung

Zeichenfolge erforderlich. Die Zeichenfolge, die maskiert oder codiert werden soll.

Rückgabewert:

Eine Kopie der codierten Zeichenfolge. Einige dieser Zeichen werden durch hexadezimale Escape-Sequenzen ersetzt.

Beschreibung:

Diese Methode kodiert weder ASCII-Buchstaben und -Zahlen noch die folgenden ASCII-Satzzeichen: - _ ~ * ' ( ) . Alle anderen Zeichen werden durch Escape-Sequenzen ersetzt.

Tipps und Hinweise:

Tipp: Sie können unescape() verwenden, um mit Escape() codierte Zeichenfolgen zu dekodieren.
Hinweis: Ecmascript v3 veraltet diese Methode, Anwendungen sollten stattdessen decodeuri() und decodeuricomponent() verwenden

Ich hoffe, dass dieser Artikel für das JavaScript-Programmierdesign aller hilfreich sein wird.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn