链接编码问题

Symanteck 2005-03-20 01:04:37
我在一个HTML文件里用了这样的链接
<a href="news.aspx?topic=新闻热点">新闻热点</a>
可是在news.aspx里Request["topic"].ToString()的结果是"新闻热", 缺了一个"点"字, 经人指点说是因为UTF-8编码的问题,可以用asp.net的UrlEncode()函数解决,如:
"news.aspx?topic=" + Server.UrlEncode( this.topic)
经过试验, 确实可以解决这个问题. 但是现在我的这个页面是html的, 最好用javascript或者其它的办法来解决这个问题, 请问各位大虾有何高招??先谢过了!!
...全文
162 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
FJGoodGood 2005-03-20
  • 打赏
  • 举报
回复
搞定了快给分额,我就差4分升星星了。
Symanteck 2005-03-20
  • 打赏
  • 举报
回复
to:FJGoodGood(_FJ_强中强) 厉害!搞定了
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<globalization
requestEncoding="gb2312"
responseEncoding="gb2312"
/>
FJGoodGood 2005-03-20
  • 打赏
  • 举报
回复
忘记说了,设置完web.config后,要打开页面随便改点东西再保存,那个页面的编码方式才真正改变。
FJGoodGood 2005-03-20
  • 打赏
  • 举报
回复
楼主,每办法啊,你这本来就不符合 HTML 的规范啊。UrlEncode 和 HtmlEncode 编码方式就是用来处理这种情况的。如果说到简单的办法,你可以试试把 web.config 的 responseEncoding设置为 gb2312, fileEncoding 也设置为 gb2312.

试试吧,我也想知道结果
Symanteck 2005-03-20
  • 打赏
  • 举报
回复
to: FJGoodGood(_FJ_强中强)我就说阿, 有没有更简单的办法, 我有好上百个这样的链接,那还不累死

to: gxboy(Blin 小学生学.NET) 确实会出现这样的问题,
mpmenu6.addItem(new mMenuItem(' 水污染治理技术','CategoryList.aspx?topic=' + UrlEncode('水污染处理技术') + '','self',false,'',null,'','','',''));
mpmenu6.addItem(new mMenuItem(' 大气污染治理技术','CategoryList.aspx?topic=大气污染治理技术','self',false,'',null,'','','',''));
mpmenu6.addItem(new mMenuItem(' 噪声控制技术','CategoryList.aspx?topic=噪声控制技术','self',false,'',null,'','','',''));
mpmenu6.addItem(new mMenuItem(' 参考文献','CategoryList.aspx?topic=参考文献','self',false,'',null,'','','',''));
这个是我的动态菜单的源代码, 这个几个都会出现问题
FJGoodGood 2005-03-20
  • 打赏
  • 举报
回复
呵呵,我刚解决了这个问题,对与这些链接,写链接的 HTML的时候,要用 HttpUtility.HtmlEncode 来编码:<a href="news.aspx?topic=<% =HttpUtility.HtmlEncode("新闻热点") %>">新闻热点</a>
gxboy 2005-03-20
  • 打赏
  • 举报
回复
不可能啊。我用request("xx")都不会出现这种问题。
Symanteck 2005-03-20
  • 打赏
  • 举报
回复
请问还有什么更简单的办法, 因为这样的连接有好几十个, 一个一个改起来非常麻烦
Symanteck 2005-03-20
  • 打赏
  • 举报
回复
回: Sunmast(速马|AIR SUPPLY!) 这是什么原因啊? 我也是这一次才遇到的。
回:alexzhang00() <a href="news.aspx?topic=新闻热点0">新闻热点</a>加个0是什么意思啊?有的链接没有问题, 有的会缺少好多个字,而且这个错误都是出现在固定的几个链接上??真是搞不懂
hackate 2005-03-20
  • 打赏
  • 举报
回复
js不懂,学了一招,哈
DeltaCat 2005-03-20
  • 打赏
  • 举报
回复
<a href="news.aspx?topic=新闻热点0">新闻热点</a>
速马 2005-03-20
  • 打赏
  • 举报
回复
1、这个问题和utf-8无关
2、javascript:
function UrlEncode(url)
{
return escape(url).replace(/\+/g, '%2C').replace(/\"/g,'%22').replace(/\'/g, '%27');
}

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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