URIError: mal formé URI de la séquence?

Le code ci-dessous l'erreur de sortir avec URIError: malformed URI sequence? quand il y a un % signe comme 60% - Completed dans la chaîne de l'URL à partir de là que j'ai besoin d'extraire la valeur du paramètre par exemple http://some-external-server.com/info?progress=60%%20-%20Completed

   <SCRIPT type="text/javascript">
            function getParameterByName(name) {
                name = name.replace(/[\[]/, "\\\[").replace(/[\]]/, "\\\]");
                var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
                results = regex.exec(location.search);
                return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
            }
    </SCRIPT>

Je n'ai pas de contrôle du serveur et de la nécessité de traiter la sortie dans ma page html.

OriginalL'auteur Stacked | 2013-12-20