ASP中的EVAL函数使用教程详解
发布时间:2023-08-25 14:47:01 所属栏目:Asp教程 来源:
导读:近两日,学习了ASP的EVAL函数。感觉上很实用,如果使用得当,能减轻很多代码的编写量,也使得代码更加简洁明了。
EVAL函数的原型:
EVAL(expression)
其中expression是字符串参数,可以是表达式,可以
EVAL函数的原型:
EVAL(expression)
其中expression是字符串参数,可以是表达式,可以
近两日,学习了ASP的EVAL函数。感觉上很实用,如果使用得当,能减轻很多代码的编写量,也使得代码更加简洁明了。 EVAL函数的原型: EVAL(expression) 其中expression是字符串参数,可以是表达式,可以是变量,甚至可以是语句。但都是以字符串的形式出现。 例如 b=EVAL("A=5") 这句代码意思是判断变量A的值,是否等于5,等于返回TRUE,不等于返回FALSE。等同于b=(A=5)。不过,该函数的灵活就在于他的参数是以字符串的形式存在的。这样我可以构造字符串,相当于执行该字符串的语句。 再例如: b=EVAL("A") 这句代码是返回变量A的值。由于ASP是隐式定义的,当没有定义A时,返回空字符串。 在例如: b=EVAL("CustFunction(2,3)") 这句代码执行函数CustFunction(2,3),将返回值给b。看到这,想到什么?嗯,多态。 由于EVAL函数的参量是字符串,我合理的构造字符串能实现很多看起来不可能的事情。 下面一段代码,是利用EVAL函数来实现构造链接URL的代码。具有一定的通用性。 Dim zID, zOrder, zOrderBy, zCurPage Dim zPageCount, zURL Dim zMM(), zMMPara() redim zMM(0) redim zMMPara(0) Public Sub AddPara(Para, Default, ParaType) ReDim Preserve zMM(UBound(zMM) + 1) ReDim Preserve zMMPara(UBound(zMM)) If ParaType = 1 Then zMM(UBound(zMM)) = Para & "=" & Default Else zMM(UBound(zMM)) = Para & "=""" & Default & """" End If zMMPara(UBound(zMM)) = Para End Sub Public Function GetURL(URL) Dim i, tS tS = "" For i = 1 To UBound(zMM) If Eval(zMM(i)) = False Then tS = tS & "&" & Mid(zMMPara(i), 2) & "=" & Eval(zMMPara(i)) End If Next If Len(tS) > 0 Then GetURL = URL & "?" & Mid(tS, 2) Else GetURL = URL End If End Function Public Function GetNav(Index) Dim tS If zPageCount = 1 Then GetNav = "" End If Select Case Index Case 1 If zCurPage = 1 Then GetNav = "" Else tS = zCurPage zCurPage = 1 GetNav = "<span><a href=" & GetURL(zURL) & ">首页</a></span>" zCurPage = tS End If Case 2 If zCurPage = 1 Then GetNav = "" Else tS = zCurPage zCurPage = zCurPage - 1 GetNav = "<span><a href=" & GetURL(zURL) & ">上一页</a></span>" zCurPage = tS End If Case 3 If zCurPage = zPageCount Then GetNav = "" Else tS = zCurPage zCurPage = zCurPage + 1 GetNav = "<span><a href=" & GetURL(zURL) & ">下一页</a></span>" zCurPage = tS End If Case 4 If zCurPage = zPageCount Then GetNav = "" Else tS = zCurPage zCurPage = zPageCount GetNav = "<span><a href=" & GetURL(zURL) & ">末页</a></span>" zCurPage = tS End If End Select End Function 这段代码,充分利用EVAL函数对于页面的四个参数zID, zOrder, zOrderBy, zCurPage进行URL的构造。且具有一定的通用性。只要适当的修改就可以了。 (编辑:聊城站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐