菜鸟请教关于“<a href= ifline.asp?id=...”语法的问题
我如果用以下语句,可以将值为1的id传送出去。
response.write " <a href= ifline.asp?id=1 target='_self' ><font color='blue'>"& objrs.fields("linename") & "</font></a><br>"
但我现在要传的值不固定,是从数据库中取出来的,但我如果采用以下两种方式(焦点是id=...),虽没提示语法错误,但是得不到我想要的那个参数值。(其中objrs是一个已准备好的记录集)
response.write " <a href= ifline.asp?id="&objrs.fields("linename")&" target='_self' ><font color='blue'>"& objrs.fields("linename") & "</font></a><br>"
或者
response.write " <a href= 'ifline.asp?id="&objrs.fields("linename")&"' target='_self' ><font color='blue'>"& objrs.fields("linename") & "</font></a><br>"
请各位高手指点,到底要如何写才是正确的呢?
多谢,一定给分!
问题点数:28、回复次数:17Top
1 楼EilianCai(凤凰涅磐)回复于 2005-06-03 20:42:27 得分 3
先检查一下objrs.fields("linename")是否获得了值,从你的写法当中看不出有什么问题Top
2 楼suhongwei(web_lover(真的不好意思,我太菜了!))回复于 2005-06-03 21:05:28 得分 5
response.write " <a href= 'ifline.asp?id="&server.urlEncode(objrs.fields("linename"))&"' target='_self' ><font color='blue'>"& objrs.fields("linename") & "</font></a><br>"
这个字段里可能包含特殊字符
无法通过URL向服务器传递.可事先编码后再传.
改动后如上.试试.Top
3 楼hjlsky(龙)回复于 2005-06-04 00:32:30 得分 1
可以用print 或request 断点测试数据的合法性Top
4 楼madpolice(午夜狂龙)回复于 2005-06-04 00:58:17 得分 0
href=
后面别写空格Top
5 楼dixing(埋头苦干)回复于 2005-06-04 02:09:34 得分 7
代码好像没错.数据类型有没匹配??Top
6 楼uxen()回复于 2005-06-04 02:19:09 得分 1
在你的浏览器察看一下源文件,看是不是html的问题。Top
7 楼zfhgc(最爱CSDN)回复于 2005-06-04 09:58:06 得分 0
先谢各位,但现在问题没解决,请各位继续指点!
to EilianCai(邪龙) : 那个字段的内容已显示在浏览器界面上了,百分百有值的
to suhongwei(西漠):按您的方法试了,但是感觉没有效果。那个字段是sqlserver中的varchar类型,不知算不算特殊字符呢?
to hjlsky(龙) :我不知断点测试如何操作
to madpolice() :去掉空格没有任何作用
to dixing(埋头苦干) : 我也怀疑是否有匹配的问题,那个表里只有三条记录,每一条里的linename字段内容分别为:10KV 、 测试、 11000KV, 这样会不匹配吗?
to uxen() : 在IE里查看html时,只看到十来行,那些ASP都隐藏了,好象看不出什么东东来
本人刚学asp几天(以前有点VB基础),请各位尽量讲得详细一点,多谢Top
8 楼itzhiren(itzhiren)回复于 2005-06-04 10:08:26 得分 2
你这个超连接是在一个循环里面的吗?如果不是,那么你需要取你需要的那个rs.fields("linename")Top
9 楼zfhgc(最爱CSDN)回复于 2005-06-04 10:10:00 得分 0
最新发现:如果我将id="&objrs.fields("linename")&"更换为id="&objrs.fields("lineid")&"就可以把参数传出去了。而lineid与linename两个字段的区别是: 前者是int型,后者是varchar型。难道只有整形字段的值才能传出去吗?不解啊!!
请各位指点!Top
10 楼madpolice(午夜狂龙)回复于 2005-06-04 10:10:22 得分 4
response.write " <a href='ifline.asp?id="&Server.UrlEncode(objrs.fields("linename"))&"' target='_self' ><font color='blue'>"& Server.HtmlEncode(objrs.fields("linename")) & "</font></a><br>"
Top
11 楼zfhgc(最爱CSDN)回复于 2005-06-04 10:11:05 得分 0
to itzhiren(itzhiren) 这个超链接当然是在循环里面。Top
12 楼loveasp007(爱死拼)回复于 2005-06-04 11:06:49 得分 1
用1对吗?如果对的话, 肯定是objrs.fields("linename")的问题了,取到值了吗?如果取到值了,怎么能不对呢???疑问ing.....Top
13 楼zfhgc(最爱CSDN)回复于 2005-06-04 11:09:34 得分 0
请大家回贴时不要光看顶层主贴,也要看我后来的最新进展啊,要不然就说不到点子上的呢:)
最新发现:如果我将id="&objrs.fields("linename")&"更换为id="&objrs.fields("lineid")&"就可以把参数传出去了。而lineid与linename两个字段的区别是: 前者是int型,后者是varchar型。难道只有整形字段的值才能传出去吗?不解啊!!
请各位指点!
Top
14 楼coolwindkaka(寒の风)回复于 2005-06-04 11:50:12 得分 4
response.write " <a href= ifline.asp?id='"&objrs.fields("linename")&"' target='_self' ><font color='blue'>"& objrs.fields("linename") & "</font></a><br>"
这样子呢,加2个单引号应该可以了吧Top
15 楼zfhgc(最爱CSDN)回复于 2005-06-04 15:03:17 得分 0
请大家回贴时不要光看顶层主贴,也要看我后来的最新进展啊,要不然就会说不到点子上的呢:)
最新情况:如果我将id="&objrs.fields("linename")&"更换为id="&objrs.fields("lineid")&"就可以把参数传出去了。而lineid与linename两个字段的区别是: 前者是int型,后者是varchar型。难道只有整形字段的值才能传出去吗?不解啊!!
请各位注意:基本语法(比如引号的个数)已经证实没有错误了,可能是类型匹配问题了
请各位继续指点!Top
16 楼coolwindkaka(寒の风)回复于 2005-06-04 15:36:44 得分 0
如果是字符型的,就这样子传
response.write " <a href= ifline.asp?id='"&objrs.fields("linename")&"' target='_self' ><font color='blue'>"& objrs.fields("linename") & "</font></a><br>"
如果是整型的,就这样子传
response.write " <a href= ifline.asp?id="&objrs.fields("linename")&" target='_self' ><font color='blue'>"& objrs.fields("linename") & "</font></a><br>"
Top
17 楼zfhgc(最爱CSDN)回复于 2005-06-06 13:06:21 得分 0
to coolwindkaka(寒の风) : 谢谢,不过你说的不是很有道理哦,我试验了!:)
现在终于搞清了问题的来胧去脉,请各位以后继续指点,下午结帐!Top




