您的位置:首页 > 编程语言 > ASP

ASP双引号的使用

2016-06-02 12:53 429 查看

原文地址:http://blog.163.com/mike_homis/blog/static/201049482012102831523260/

ASP双引号的使用  

1,双引号""

ASP中处在双引号中的可以是任意的字符、字符串,HTML代码。

比如

<%response.write

("cnbruce here")%><hr>

<%response.write ("<b>cnbruce

here</b>")%>

产生的页面效果分别是:默认文字和加粗文字“cnbruce here”
下面再想想,如果我要在输出的页面文字上加一颜色效果该怎么办?

1,一般文字颜色这样写:<font

color="#0000ff">cnbruce</font>
2,response.write写法是这样的:response.write("输入显示的内容")
3,如果要将上面超链接代码放到response.write中,有没有发现write方法中

的双引号和color中的双引号形成嵌套效果,
势必形成response.write("<font color="#0000ff">cnbruce</font>")

4,调试结果不容乐观,因为color的前引号和write的前引号形成匹配,内容

为<font

color=;同样color的后引号也就和write的后引号匹配了,内容为:

>cnbruce</font>。最终结果是:中间的

#0000ff 被孤单了。

5,所以为了结果正确,你可以将 #0000ff 当成字符串放在双引号里面,然后该字

符串与前字符串<font

color=和后字符串>cnbruce</font>中间的连接就采用&号

最后结果如下:

<%
response.write("<font color=" & "#0000ff" &

">cnbruce</font>")

%>

2,单引号''
正如学习语文课一样,继续放在双引号中的引号可以采用单引号。

那么上面一条语句response.write("<font

color="#0000ff">cnbruce</font>")中的

#0000ff就可以将其双引号变为单引号:
response.write("<font color='#0000ff'>cnbruce</font>"),

这样执行同样正确。

3,连接字符&号
ASP中&号的主要作用是用来连接的,包括:字符串-字符串、字符串-变量、变量-变量等混合连接。

比如下面一例题:

<%
mycolor="#0000ff"

response.write ("<font color=' "&mycolor&"

'>" & "cnbruce" & "</font>")

%>
其中极需要注意的是:color的单引号中又采用了双引号~!你也许会糊了,慢慢看。
1,现在是自己定义了一个变量mycolor,按照原则,变量放在response.write里面是不
需要加双引号的,因为加了双引就表示是字符串,而非变量啊。
2,所以response.write如果要输出变量可以直接这样写:response.write(mycolor)

3,但是,现在。我们的变量一定要是放在双引号中的(比如上面程序是放在单引中),

那具体的response.write又该如何书写呢?
4,关键写法:将ASP中的变量继续添加左右的"&包括,就可以放到response.write的引号中了,效果即为:response.write("

"&mycolor&" ")

5,分析response.write(" "&mycolor&"

"),其实还就是前一空字符串连接mycolor变量再连接后一字符串嘛。

6,所以,现在对于上方的ASP整个例题应该有所领悟了吧。

继续强化加深
<%

mycolor="#0000ff"

response.write ("<font color='

"&mycolor&" '>" & mycolor & "</font>")

%>
这个里面就包含了字符串,变量以及变量在引号中的使用。相信你也就能够明白了吧。

最后,你还可以进行HTML和ASP的混合使用。
<%mycolor="#0000ff"%>

<font

color=<%=mycolor%>><%=mycolor%></td>

有很重要的一点还是没有讲,双引号的转义问题。
vbscript中如果需要在字符串里使用双引号,需要转义,就如同javascript,c等语言中的转义意思一样

在vbscript中,双引号的转义方法是书写两个双引号,即"",比如

Response.write "I say ""you are so

clever!"""

输出的结果就是:I say "you are so clever!"
使用转义的目的有两个:
1、当然是需要用到双引号的地方必须用双引号
2、不建议输出html代码时,属性值部分不加引号或者只加单引号(为什么?因为W3C的标准是必须加双引号的)

也即如此
Response.write "<a href="""+rs("link")+"""

target=""_blank"">"+rs("title")+"</a>"
红色引号部分为双引号转义输出,蓝色引号部分是字符串定义边界

或许你会觉得这样写不利于阅读,但习惯就好,而且最好就习惯这样写

另外建议&号用要用的谨慎,因为&号在做连接时,可以把数字类型和逻辑类型自动转换成字符串类型,即

b=true
n=1

s="abcd"

Response.Write s&n&b

输出结果时 abcd1True
这样并不好,养成这样的坏习惯后,在操作sql语句,有时会出现令你头疼的无法预料的错误,所以,如果要使用&号做为连接,必须显式的把数字类型和布尔类型转换成字符类型,即用Cstr函数。如此,&的功能和+在做为字符串连接时的功能就一致了。建议是千万别贪图小便宜来。程序员必须严谨。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: