Heim  >  Artikel  >  Web-Frontend  >  html html übergebener Wert verstümmelter Code

html html übergebener Wert verstümmelter Code

WBOY
WBOYOriginal
2023-05-15 15:49:39577Durchsuche

Bei der Webentwicklung müssen wir manchmal einige Daten zwischen verschiedenen Webseiten übertragen. Zu diesem Zeitpunkt können wir HTML verwenden, um Werte zu übergeben. Die Übertragung von HTML-Werten ist eine gängige Methode, bei der Verwendung können jedoch auch einige Probleme auftreten, z. B. verstümmelte Zeichen.

Zu den gängigen Methoden zur Übergabe von HTML-Werten gehören die Übergabe von URL-Parametern, die Formularübermittlung, Cookies und Sitzungen, wobei die Übergabe von URL-Parametern und die Formularübermittlung die am häufigsten verwendeten Methoden sind. Bei der Übergabe von URL-Parametern werden Daten zwischen verschiedenen Seiten über die URL übertragen. Beispielsweise können wir den folgenden Code verwenden, um einen Parameter auf einer Seite zu übergeben:

<a href="target.html?name=张三&age=20">传递参数</a>

Auf der Zielseite können wir den Parameterwert über JavaScript abrufen:

<script>
    var name = getQueryString("name");
    var age = getQueryString("age");
    function getQueryString(name){
        var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
        var r = window.location.search.substr(1).match(reg);
        if(r!=null)return  unescape(r[2]); return null;
    }
</script>

Im obigen Code verwenden wir zum Abrufen die reguläre Ausdrucksmethode von JavaScript Verwenden Sie für den Parameterwert die Methode unescape(), um verstümmelte Zeichen zu dekodieren.

In der tatsächlichen Entwicklung können jedoch einige ungelöste, verstümmelte Probleme auftreten. Zu diesem Zeitpunkt müssen wir über Lösungen nachdenken.

Zuerst können wir versuchen, den Parameterwert zu kodieren, um verstümmelte Zeichen zu vermeiden. Es gibt zwei gängige Kodierungsmethoden, nämlich URL-Kodierung und Base64-Kodierung.

URL-Kodierung konvertiert alle Sonderzeichen in die Formatkodierung %xx, wobei „%xx“ eine Zeichenfolge mit hexadezimaler Darstellung des ASCII-Codewerts des Zeichens darstellt. Zum Beispiel können wir die encodeURIComponent()-Methode von JavaScript verwenden, um Parameter URL-codieren:

<a href="target.html?name=<%=encodeURIComponent('张三')%>&age=<%=encodeURIComponent('20')%>">传递参数</a>

Auf der Zielseite können wir die decodeURIComponent()-Methode zum Decodieren verwenden:

<script>
    var name = decodeURIComponent(getQueryString("name"));
    var age = decodeURIComponent(getQueryString("age"));
    function getQueryString(name){
        var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
        var r = window.location.search.substr(1).match(reg);
        if(r!=null)return  unescape(r[2]); return null;
    }
</script>

Base64-Codierung dient dazu, die Daten in Base64 zu konvertieren, um dies zu vermeiden verstümmelte Zeichen. Zum Beispiel können wir die btoa()-Methode von JavaScript verwenden, um die Parameter Base64 zu kodieren:

<a href="target.html?name=<%=btoa('张三')%>&age=<%=btoa('20')%>">传递参数</a>

Auf der Zielseite können wir die atob()-Methode zum Dekodieren verwenden:

<script>
    var name = atob(getQueryString("name"));
    var age = atob(getQueryString("age"));
    function getQueryString(name){
        var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
        var r = window.location.search.substr(1).match(reg);
        if(r!=null)return  unescape(r[2]); return null;
    }
</script>

Zusätzlich zur Kodierung können wir auch das Meta verwenden Tag zum Angeben der Codierung der Seite Methoden, zum Beispiel:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Die oben genannten Methoden sind einige Methoden zur Lösung des Problems der Übertragung verstümmelter HTML-Werte. Sie müssen die geeignete Methode entsprechend der tatsächlichen Situation auswählen. Gleichzeitig müssen wir auch auf den Schutz der Privatsphäre der Benutzer achten und die Weitergabe sensibler Informationen über URLs vermeiden.

Das obige ist der detaillierte Inhalt vonhtml html übergebener Wert verstümmelter Code. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Vorheriger Artikel:jspconverthtmlNächster Artikel:jspconverthtml