Home >Web Front-end >JS Tutorial >How Can I Decode Escaped URL Parameters in jQuery?

How Can I Decode Escaped URL Parameters in jQuery?

DDD
DDDOriginal
2024-12-09 06:42:11446browse

How Can I Decode Escaped URL Parameters in jQuery?

Decoding Escaped URL Parameters in jQuery

When retrieving URL parameters in a jQuery application, it's common to encounter issues with escaped characters, especially when parameters contain non-Latin characters or special symbols. This can lead to the infamous "malformed URI sequence" error in JavaScript.

If you're using the standard jQuery function $.getUrlParam(), it may not support URL parameters with escaped characters. In such cases, you can modify the function to handle escaping correctly.

Here's an example of a modified getURLParameter() function that can decode escaped parameters:

function getURLParameter(name) {
    return decodeURI(
        (RegExp(name + '=' + '(.+?)(&|$)').exec(location.search)||[,null])[1]
    );
}

This function uses decodeURI() to decode the parameter value after matching it using a regular expression.

To use this modified function, simply replace the original $.getUrlParam() with the updated function. For example, if you would normally use:

let searchParam = $.getUrlParam('search');

You would now use:

let searchParam = getURLParameter('search');

This modified getURLParameter() function should correctly decode escaped URL parameters, even if they contain non-Latin characters or special symbols.

The above is the detailed content of How Can I Decode Escaped URL Parameters in jQuery?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn