asp中sub可以传递字符型参数么?

来源:百度知道 编辑:UC知道 时间:2024/06/05 12:41:32
这个sub只能接收到数字型参数,字符形参数无法传递
当参数为2的时候,可以正常输出
当参数为aa的时候,却输出为"none"
是不是收参数的时候要做数据类型转换?

sub rila_cms_base(ShowType)

'RilaCms*打开数据库
set rs=nothing
set rs=server.CreateObject("adodb.recordset")
rs.open "select * from rila_cms_base",conn,1,1

Select Case ShowType
case"aa"
response.Write rs("rila_cms_home")
case"2"
response.Write rs("rila_cms_error")
case"3"
response.Write rs("rila_cms_version")
case"4"
response.Write rs("rila_cms_name")
case"name"
response.Write rs("rila_cms_meta")
case else
response.Write "none"
End Select
感谢1楼,我把问题重新说一下

现在这个过程我是用<%call rila_cms_base(1)%>作为参数传递的,但是因为意义不明确,想改成<%call rila_cms_base(aa)%>,用aa作为参数,

应该返回response.Write rs("rila_cms_home") ,
<

case"aa"
显示为"none"是因为被系统当case else处理了。
请注意 "aa" 和 aa 是不一样的,前者是字符,后者被当做了变量名

ASP 的类型定义很弱,在子程序SUB 及函数FUNCTION 的参数定义上也是如此,你可以强制定义为 按值传递 sub rila_cms_base(ByVal ShowType)
这样可以避免很多问题,你的问题我没怎么看清楚,但是基本上函数和子程序的的参数传递上的问题就在于此。