Asp classic 制作一个函数,asp?
我正在尝试创建一个函数来检查有效的学期,如秋季或春季,我一直收到这个错误 Microsoft VBScript编译错误“800a03f6”Asp classic 制作一个函数,asp?,asp-classic,vbscript,Asp Classic,Vbscript,我正在尝试创建一个函数来检查有效的学期,如秋季或春季,我一直收到这个错误 Microsoft VBScript编译错误“800a03f6” 预期“结束” 否则 ^ 这是我的密码 Function IsSemester(UserInput) ' Validation: Spring, Fall Temp=UserInput If Len(Temp)=9 Then IsSemester=True For P=1 to 4 If Left(Temp,P,1)<>"Fall" The
预期“结束”
否则
^ 这是我的密码
Function IsSemester(UserInput)
' Validation: Spring, Fall
Temp=UserInput
If Len(Temp)=9 Then IsSemester=True
For P=1 to 4
If Left(Temp,P,1)<>"Fall" Then IsSemester=False
Next
If Mid(Temp,5,1)<>" " Then IsSemester=False
For P=6 to 9
If Not IsInteger(Mid(Temp,P,9)) Then IsSemester=False
Next
Else
IsSemester=True
End If
If Len(Temp)=11 Then IsSemester=True
For C=1 to 6
If Left(Temp,C,6)<>"Spring" Then IsSemester=False
Next
If Mid(Temp,7,1)<>" " Then IsSemester=False
For C=8 to 11
If Not IsInteger(Mid(Temp,8,11)) Then IsSemester=False
Next
Else
IsSemester=True
End If
End Function
函数IsSeMaster(用户输入)
验证:春天,秋天
Temp=UserInput
如果Len(Temp)=9,则IsSeMaster=True
对于P=1到4
如果左侧(温度、压力、1)“下降”,则IsSeMaster=False
下一个
如果中间(温度,5,1)”,则IsSeMaster=False
对于P=6到9
如果不是IsInteger(Mid(温度,P,9)),则IsSemester=False
下一个
其他的
IsSemester=True
如果结束
如果Len(Temp)=11,则IsSeMaster=True
对于C=1到6
如果左侧(温度、C、6)“弹簧”,则IsSeMaster=False
下一个
如果Mid(温度,7,1)”,则IsSeMaster=False
对于C=8到11
如果不是IsInteger(Mid(温度,8,11)),则IsSemester=False
下一个
其他的
IsSemester=True
如果结束
端函数
太简单了,缩进你的代码,你就会发现问题所在
Function IsSemester(UserInput)
' Validation: Spring, Fall
Temp=UserInput
If Len(Temp)=9 Then IsSemester=True
For P=1 to 4
If Left(Temp,P,1)<>"Fall" Then IsSemester=False
Next
If Mid(Temp,5,1)<>" " Then IsSemester=False
For P=6 to 9
If Not IsInteger(Mid(Temp,P,9)) Then IsSemester=False
Next
Else
IsSemester=True
End If
If Len(Temp)=11 Then IsSemester=True
For C=1 to 6
If Left(Temp,C,6)<>"Spring" Then IsSemester=False
Next
If Mid(Temp,7,1)<>" " Then IsSemester=False
For C=8 to 11
If Not IsInteger(Mid(Temp,8,11)) Then IsSemester=False
Next
Else
IsSemester=True
End If
End Function
意味着它是一个独立的If语句,只有同一行上的THEN之后的语句将受该条件控制,因此下一行上的For循环是一个独立的语句,与该If无关。您应该将代码更改为
If Len(Temp)=9 Then
IsSemester = True
'<whatever your code here>
End If
如果Len(Temp)=9,则
IsSemester=True
'
如果结束
如果您指出错误(特别是),这会很有帮助,尽管我强烈同意OP应该缩进他的代码。您能看到最后一个Else
和End if
??似乎在此之前缺少了一个IF
…我看到您已修复了该问题。我的意思是为了OP的利益。你应该总是解释你的解决方案,即使只是简单的解释。参见这篇文章中的第10点:我认为If以If len(Temp)=11开始,而以If结尾。对不起,我是个笨蛋…@尼克,谢谢,我会取消我的否决票(实际上我会向上投票)。另外,欢迎来到你正在踢屁股的网站,2周内200个代表=)PS:如果你想从你的评论中通知某人,你可以使用“@”符号。对我来说,那将是@jadarnel27
。仅供参考。
If Len(Temp)=9 Then
IsSemester = True
'<whatever your code here>
End If