Javascript equivalent to php's urldecode()

Derek Adair picture Derek Adair · Aug 7, 2010 · Viewed 45.1k times · Source

I wrote a custom xml parser and its locking up on special characters. So naturally I urlencoded them into my database.

I can't seem to find an equivalent to php's urldecode().

Are there any extentions for jquery or javascript that can accomplish this?

Answer

kennytm picture kennytm · Aug 7, 2010

You could use the decodeURIComponent function to convert the %xx into characters. However, to convert + into spaces you need to replace them in an extra step.

function urldecode(url) {
  return decodeURIComponent(url.replace(/\+/g, ' '));
}