菜农学ASP——孜孜不倦!

xiaobei525 2002-01-11 11:12:25
我在传送参数的时候,用的是:
<a href=a.asp?queryitem=123411111111.123456789$#>

为什么到了a.asp中
item=Request.QueryString("queryitem")
Reponse.Write(item)
显示的为123411111111.123456789$
?少了一个#为什么?为什么?
...全文
123 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
julyclyde 2002-01-11
  • 打赏
  • 举报
回复
queryitem=123411111111.123456789$#
这句应该会出错
wdfboy1978 2002-01-11
  • 打赏
  • 举报
回复
出问题的地方是在request这里,它将此符号解释了。如果你需要传这个值的话,就用session("queryitem")来保存吧。这样就不会出现这个问题了。

<%
dim queryitem
queryitem=123411111111.123456789$#
session("queryitem")=queryitem
%>

不过会费一点服务器的资源。
xiaobei525 2002-01-11
  • 打赏
  • 举报
回复
那怎么办???我的文件名里有的就是有#号,怎么办呢
wdfboy1978 2002-01-11
  • 打赏
  • 举报
回复
因为#是包含文件include的开头,ASP会在服务器端解释这个符号,所以#之后的字符都看不到!所以请不要在需要显示的地方全用#号。
nn18 2002-01-11
  • 打赏
  • 举报
回复
#意义特殊
wdfboy1978 2002-01-11
  • 打赏
  • 举报
回复
<% dim str
str="123411111111.123456789$#"
str1=replace(str,"#","@") '因为#会被服务器解析,所以在传递时要变换#符号,这里以"@"代表。
'response.write str
'response.end
%>
<html>
<body>
<a href="a.asp?ss=<%=str1%>">aa</a>
</body>
</html>

==========================================
传递参数

<%
dim item
item=replace(Request.querystring("ss"),"@","#") '传递过来后再替换回来就可以了。
response.write item
%>

能不能得分?菜农同志
blues-star 2002-01-11
  • 打赏
  • 举报
回复
<a name=test>
<a href="#test">
blues-star 2002-01-11
  • 打赏
  • 举报
回复
#号要经过url编码后才可以传送
否则#代表的意义是一个锚,就是通常所说的书签
xiaobei525 2002-01-11
  • 打赏
  • 举报
回复
哎,菜农用ASP,看来不是本专业是白给了,
KnowLittle 2002-01-11
  • 打赏
  • 举报
回复
我错了,不是的
问题的关键在于浏览器对于#的处理
另外:字符串里面有#是可以得
KnowLittle 2002-01-11
  • 打赏
  • 举报
回复
转义
如果我没记错,是两个##

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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