主题:  [急]asp新手求助

csdjyzd

职务:普通成员
等级:1
金币:0.0
发贴:35
#12004/9/16 17:14:24
做一个从一个字符串中判断一个字符出现的次数。。
我写了一段程序,但运行不成功,请高手指点。。。
<html>
<head><title>字符检查</title>
<script language=vbscript runat=server>
function checkout(s,t)
dim i,j,L,n,x,c
x=0
i=s
j=t
L=len(i)
for n= 1 to L
c= mid(i,n-1,1)
if c=j then
x=x+1
end if
next
alert("字符出现次数"+cstr(x))
end function
</script>
</head>
<body>
<form method="post">
输入一行字符串:<input type="text" name="x1" value=""><br>
输入一个字 符: <input type="text" name="x2" value=""><br>
<input type="button" name="r" value="提交"-
onclick="checkout(x1.value,x2.value)">
<input type="reset" value="重置">
</form>
</body>
</html>



蓝鲸

职务:版主
等级:5
金币:42.1
发贴:2614
#22004/9/16 17:37:18
把 runat=server 去掉,这是服务端运行的,而你的代码是客户端程序。


非常大鱼

csdjyzd

职务:普通成员
等级:1
金币:0.0
发贴:35
#32004/9/16 19:14:32
我去掉了,可还是不行啊~
提交后没反应。。。
alert提示窗口根本就没运行到呀~~
为什么?
另请教,什么样的是运行在服务器上的?



蓝鲸

职务:版主
等级:5
金币:42.1
发贴:2614
#42004/9/16 21:25:52
<html>
<head><title>字符检查</title>
<script language=vbscript>
sub checkout(str1,str2)
    dim chrCnt
    ChrCnt = 0
    
    for i = 1 to len(str1)
        if mid(str1, i, 1) = str2 then
            ChrCnt = ChrCnt + 1
        end if
    next
    alert("字符出现次数" & CStr(ChrCnt))
end sub
</script>
</head>
<body>
<form method="post">
输入一行字符串:<input type="text" name="x1" value=""><br>
输入一个字 符: <input type="text" name="x2" value=""><br>
<input type="button" name="r" value="提交"-
onclick="call checkout(x1.value,x2.value)">
<input type="reset" value="重置">
</form>
</body>
</html>

你的错误是:
for n= 1 to L
c= mid(i,n-1,1)
位置从1开始,而不是0,否则出错

另外
call checkout(x1.value,x2.value)
checkout x1.value, x2.value
另选一种

run at不要写,服务端的程序如ASP,是在服务器里运行程序,把解释好的代码传到客户端。你的代码传到网上去可能要出错。但没有IIS解释可能会忽略掉。

编辑历史:[此帖最近一次被 蓝鲸 编辑过(编辑时间:2004-09-16 21:35:15)]

非常大鱼

蓝鲸

职务:版主
等级:5
金币:42.1
发贴:2614
#52004/9/16 21:29:31
建议学习javascript,VBScript在ASP.net中已不被支持。


非常大鱼

csdjyzd

职务:普通成员
等级:1
金币:0.0
发贴:35
#62004/9/16 22:35:24
多谢高手指点。。。
我现在是大四的学生,刚开了asp的课程~~
讲的是vbscript
能介绍点javascript的资料或网站吗?
谢谢!~~



蓝鲸

职务:版主
等级:5
金币:42.1
发贴:2614