用Eval函数将两个变量连接变成第3个变量输出
一段时间没有接触ASP,又荒废了一样东西。
在做一个页面幻灯片广告的时候,我在后台用一个asp存了图片标题、图片地址和图片链接等数据,由于有多张图片实现幻灯切换,为了灵活最初没考虑到用数组来存,直接存成了下面这种格式:
ImgTitle1="图片标题1"
ImgUrl1="图片地址1"
ImgLink1="图片链接1"
ImgTitle2="图片标题2"
ImgUrl2="图片地址2"
ImgLink2="图片链接2"
ImgTitle3="图片标题3"
ImgUrl3="图片地址3"
ImgLink3="图片链接3"
那么在前台调用的时候,除了包含上面变量的文件以外,我想利用一个For循环来response.write。我希望在一个语句中用一个For变量把所有的变量内容打印出来:
for i=1 to 3
response.write"<a href='图片链接i'><img src='图片地址i' alt='图片标题i' /></a><br/>"
next
但是实际上却遇到问题For中相当于有两个变量:图片xx和i,想了很多种办法都只能输出i值,不能正确读出事先为ImgTitle1变量赋的值。后来问了同事,才知道要用Eval函数把两个变量连起来作为一个变量即可,与eval函数在JavaScript中用法好像都是一样的。如果使用得当,能减轻很多代码的编写量,也使得代码更加简洁明了。
EVAL函数的原型:
EVAL(expression)
其中expression是字符串参数,可以是表达式,可以是变量,甚至可以是语句。但都是以字符串的形式出现。
ASP中Eval的运用:将字符串转化为变量!
在FLash的脚本代码中我们常用到Eval()这个函数,其作用就是将字符串转化为变量!
下面就是一个例子
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> </head> <body> <!--include file="1.asp" -->
我希望输出的是:<br/> <a href="aaa">aaa</a><br/> <a href="bbb">bbb</a><br/> <a href="ccc">ccc</a><br/>
实际输出的是:<br/>
<%
a1=”aaa”
a2=”bbb”
a3=”ccc”
for i=1 to 3
response.write”<a href='” & eval(“a” & i) & “‘>”& eval(“a” & i) &”</a><br/>”
next
%>
</body>
</html>
除非注明,流浪天下 文章均为原创,转载请以链接形式注明出处。查看声明
本文链接地址: https://maie.name/456.html
订阅本站:https://maie.name/feed,打赏:https://maie.name/donation