| | Submitted on: 6/4/2003 8:10:42 PM
By: Charles Toepfer
Level: Intermediate User Rating:
By 1 Users Compatibility:JavaScript
Users have accessed this article 6374 times. | (About the author) |
| | Javascript URLEncode (like ASP URLEncode). | |
|
Terms of Agreement:
By using this article, you agree to the following terms...
1) You may use
this article in your own programs (and may compile it into a program and distribute it in compiled format for languages that allow it) freely and with no charge.
2) You MAY NOT redistribute this article (for example to a web site) without written permission from the original author. Failure to do so is a violation of copyright laws.
3) You may link to this article from another website, but ONLY if it is not wrapped in a frame.
4) You will abide by any additional copyright restrictions which the author may have placed in the article or article's description. |
function
urlencode(strText) {
var isObj;
var trimReg;
if( typeof(strText)
== "string" ) {
if( strText != null ) {
trimReg = /(^\s+)|(\s+$)/g;
strText = strText.replace( trimReg, '');
for(i=32;i<256;i++)
{
strText = strText.replace(String.fromCharCode(i),escape(String.fromCharCode(i)));
}
}
}
return strText;
}
| |
Other 1 submission(s) by this author
|
|
|
Report Bad Submission |
|
|
Your Vote! |
See Voting Log |
|
Other User Comments |
7/19/2003 6:16:10 AM:Koen The Dutch Dude Awesome code. Works great! I found that
many people (i.e. in newsgroups) dont
know there is a solution for the
problem in which JavaScript translates
encoded URLs back to decoded URLs when
passing through functions. Re-encoding
them with this code works great. Thanks
a lot!
|
9/24/2003 10:37:19 AM: Alas, the code doesn't work as
expected.
The
|
9/24/2003 10:38:17 AM: Alas, this code doesn't work as
expected.
The "strText.replace" part
replaces only the FIRST occurrence of
any character; other occurrences are
untouched.
I would propose the
following instead:
var strRet =
"";
(....)
for( i = 0; i<
strText.length; i++ ) strRet += escape(
strText.charAt( i ) );
(...)
return strRet;
Some more
comments:
1. variable "isObj" is
initialized, but never used.
2.
strText can't ever be null, if typeof(
strText ) returns true. So the
null-test is unnecessary.
3. This
function does not solve certain
problems you may encounter when the
urlencoded variable contains a
"+"
character (which is interpreted as a
space in many browsers and server
programs, like PHP). But that is
a
problem of those programs, I guess.
|
|
Add Your Feedback! |
Note:Not only will your feedback be posted, but an email will be sent to the code's author in your name.
NOTICE: The author of this article has been kind enough to share it with you. If you have a criticism, please state it politely or it will be deleted.
For feedback not related to this particular article, please click here. |
|