In den URL-Übertragungsparametern gibt es einige Sonderzeichen, und diese Symbole können nicht direkt in der URL übergeben werden. Wenn Sie diese Sonderzeichen in der URL übergeben möchten, muss deren Codierung verwendet werden.
In der folgenden Tabelle sind einige URL-Sondersymbole und codierte Hexadezimalwerte aufgeführt.
1. + Das +-Zeichen in der URL stellt ein Leerzeichen dar%2B
2. Leerzeichen in der URL können mit einem +-Zeichen markiert oder mit %20 kodiert werden
3. / trennt Verzeichnisse und Unterverzeichnisse%2F
4. ? Trennen Sie die tatsächliche URL und die Parameter %3F
5. % gibt das Sonderzeichen %25 an
6. # bedeutet Lesezeichen%23
7. & Trennzeichen %26 zwischen den in der URL angegebenen Parametern
8. = Der Wert des in der URL%3D angegebenen Parameters
Lösung:
Die Methode replace() ersetzt nur das erste übereinstimmende Zeichen, wenn str.replace("-","!") direkt verwendet wird.
Und str.replace(//-/g, „!“) kann alle übereinstimmenden Zeichen ersetzen (g ist ein globales Flag).
ersetzen()
Ersetzen Sie Zeichenvariablen in js wie folgt:
data2=data2.replace(//%/g,"%25");
data2=data2.replace(//#/g,"%23");
data2=data2.replace(//&/g,"%26");