Dekodieren maskierter URL-Parameter in jQuery
Beim Abrufen von URL-Parametern in einer jQuery-Anwendung treten häufig Probleme mit maskierten Zeichen auf, insbesondere wenn Parameter enthalten nicht-lateinische Zeichen oder Sonderzeichen. Dies kann zu dem berüchtigten Fehler „falsche URI-Sequenz“ in JavaScript führen.
Wenn Sie die Standard-jQuery-Funktion $.getUrlParam() verwenden, werden URL-Parameter mit Escapezeichen möglicherweise nicht unterstützt. In solchen Fällen können Sie die Funktion ändern, um das Escapen korrekt zu handhaben.
Hier ist ein Beispiel einer modifizierten getURLParameter()-Funktion, die maskierte Parameter dekodieren kann:
function getURLParameter(name) { return decodeURI( (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1] ); }
Diese Funktion verwendet decodeURI( ), um den Parameterwert zu dekodieren, nachdem er mit einem regulären Ausdruck abgeglichen wurde.
Um diese geänderte Funktion zu verwenden, ersetzen Sie einfach das ursprüngliche $.getUrlParam() durch die aktualisierte Funktion. Wenn Sie beispielsweise normalerweise Folgendes verwenden würden:
let searchParam = $.getUrlParam('search');
Sie würden jetzt Folgendes verwenden:
let searchParam = getURLParameter('search');
Diese modifizierte getURLParameter()-Funktion sollte maskierte URL-Parameter korrekt dekodieren, auch wenn sie keine enthalten -Lateinische Zeichen oder Sonderzeichen.
Das obige ist der detaillierte Inhalt vonWie kann ich maskierte URL-Parameter in jQuery dekodieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!