?
Solved

JavaScript: Functions to Escape / Unescape Using _ instead of %

Posted on 2013-11-06
3
Medium Priority
?
337 Views
Last Modified: 2013-11-06
I want JavaScript functions that will work just like escape() and unescape() that use an underscore instead of a percent.

My function below does not work, as the example demonstrates:

http://jsfiddle.net/3fp6c/
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>Demo</title>
</head>
<body>

<script type="text/javascript">
//<![CDATA[

var x = 'Hello_World "123%"';
alert(x);

x = escapeu(x);

x = unescapeu(x);
alert(x);

function escapeu(str) {
 return escape(str).replace(/%/g, '_' );
}

function unescapeu(str) {
 return unescape(str.replace(/_/g, '%' ));
}

//]]>
</script>
</body>
</html>

Open in new window

0
Comment
Question by:hankknight
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 82

Expert Comment

by:leakim971
ID: 39628743
what about :
function escapeu(str) {
 return escape(str).replace(new RegExp(escape("%"),"g"), escape('_'));
}

Open in new window


test page : http://jsfiddle.net/3fp6c/2/
0
 
LVL 16

Author Comment

by:hankknight
ID: 39628869
That does not do the trick.

Please test this:
http://jsfiddle.net/6WHaM/
0
 
LVL 82

Accepted Solution

by:
leakim971 earned 2000 total points
ID: 39628914
check this one : http://jsfiddle.net/6WHaM/1/

var x = 'Hello___World "123%"';
alert('The fist and last line should be the same:\n\n'+x+'\n'+escapeu(x)+'\n'+unescapeu(escapeu(x)));

function escapeu(str) {
 return escape(str).replace(/_/g,"%5F").replace(/%/g,"_");
}

function unescapeu(str) {
 return unescape(str.replace(/_/g,"%"));
}

Open in new window

0

Featured Post

Get 15 Days FREE Full-Featured Trial

Benefit from a mission critical IT monitoring with Monitis Premium or get it FREE for your entry level monitoring needs.
-Over 200,000 users
-More than 300,000 websites monitored
-Used in 197 countries
-Recommended by 98% of users

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Article by: DanRollins
This article describes a JavaScript program that creates a maze made of hexagonal cells.  In Part 2 (http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/A_7850-Hex-Maze-Part-2.html), we'll extend the program by adding a depth-…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…
Suggested Courses

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question