请问,如何把中文,转换为url编码格式

tatty_bad 2008-10-31 10:59:06
比如,万圣节这三个字,转换为URL之后应该是%CD%F2%CA%A5%BD%DA

这有JS处理的函数吗???

请教一下。。。
...全文
938 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdjnliu73 2008-11-01
  • 打赏
  • 举报
回复
<%
ck="万圣节"

url="http://www.baidu.com/s?wd="&server.urlencode(ck)&""

response.redirect ""&url&""
%>
tatty_bad 2008-11-01
  • 打赏
  • 举报
回复
escape是行不通的。。

百度就不是用escape来转码的
passionlh 2008-11-01
  • 打赏
  • 举报
回复
URLEncode()一下就好
wguorun 2008-11-01
  • 打赏
  • 举报
回复

var _key = escape("万圣节");//_key="%CD%F2%CA%A5%BD%DA";
//若要反过来就用unescape()


kevin700 2008-11-01
  • 打赏
  • 举报
回复
对于我来说这个不太清楚,其它人应该了解。
ace112212 2008-11-01
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 leening102 的回复:]
HTML code<a href="test.aspx?name="+escape("万圣节")>bbgtbb<a/>


相应的test.aspx.cs页面
不需要去解码,利用下面的方式获取会自动解码的

C# code public string Name
{
get
{
string name = Request.Params["name"];
if (name != null && name != "")
{
return name;
}
else
{

[/Quote]



escape不是最佳解决方式有些时候用不了
tatty_bad 2008-11-01
  • 打赏
  • 举报
回复
楼上的,我可能是没有说清楚。。
我现在是utf8的页面,里面有中文的数据,需要提交到百度去搜索。
百度默认的是gb2312,所以提交过去之后,是乱码。

所以我就想,能不能在用js提交过去的时候,把数据处理成百度可以认识的。

Google的就不存在这个问题。。。
leening102 2008-10-31
  • 打赏
  • 举报
回复
不好意思,刚有点错误
<a href="test.aspx?name="+escape("万圣节")>bbgtbb<a/>

不能这样写
因该是这样
 <a href="javascript:void()" onclick="go();"></a>

JS:
<script type="text/javascript">
function go()
{
document.getElementById("test").href="test.aspx?name"+escape("万圣节");
}
</script>

leening102 2008-10-31
  • 打赏
  • 举报
回复
<a href="test.aspx?name="+escape("万圣节")>bbgtbb<a/>

相应的test.aspx.cs页面
不需要去解码,利用下面的方式获取会自动解码的
  public string Name 
{
get
{
string name = Request.Params["name"];
if (name != null && name != "")
{
return name;
}
else
{
return "";
}
}
}
Eagle_ice 2008-10-31
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zswang 的回复:]
可惜vbscript只有IE支持。
[/Quote]
是啊 有些可惜...好久不见...
tatty_bad 2008-10-31
  • 打赏
  • 举报
回复
那也就是说,不能基于Firefox用了。

有好的解决方案吗?多浏览器可以用的
王集鹄 2008-10-31
  • 打赏
  • 举报
回复
可惜vbscript只有IE支持。
sy_binbin 2008-10-31
  • 打赏
  • 举报
回复

<script language="javascript">
String.prototype.UrlEncode = function()
{
var str = this;
str = str.replace(/./g,function(sHex)
{
window.EnCodeStr = "";
window.sHex = sHex;
window.execScript('window.EnCodeStr=Hex(Asc(window.sHex))',"vbscript");
return window.EnCodeStr.replace(/../g,"%$&");
});
return str;
}
document.write("万圣节".UrlEncode())
</script>
不悲不喜 2008-10-31
  • 打赏
  • 举报
回复
js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,
相应3个解码函数:unescape,decodeURI,decodeURIComponent

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧