主题:  关于给控件起名字的问题!(欢迎来讨论)

csdjyzd

职务:普通成员
等级:1
金币:0.0
发贴:35
#12005/5/13 23:15:54
今天用VBS做一个ASP网页的时候,发现一个很有趣的问题~~
我们给控件起名字的时候可以用引号引起来:
<input name="x1" type=radio value="A">mothde
也可以不引起来:
<input name=x1 type=radio value="A">mothde
两种写法都可以用,看第一种写发,给人感觉就是用一个字符串做为控件的名字~~
由于今天是做的一个网上调查,要对单选项动态的取名字
我写了一段代码:
<%While not rs.eof
i=i+1%>
<%=i%>. <%=rs("question")%><br>
<input name=x+<%=i%> type="radio" value="A"><%=rs("A")%><br>
<input name=x+<%=i%> type="radio" value="B"><%=rs("B")%><br>
<input name=x+<%=i%> type="radio" value="C"><%=rs("C")%><br>
<input name=x+<%=i%> type="radio" value="D"><%=rs("D")%><br>
<% rs.MoveNext
wend
rs.close%>
我的本意是给控件起名字为 X1,X2。。。。。。
但是,当我打开页面源代码的时候名字却是 X+1,X+2。。。。。。。。。。
于是,我把代码改成:
<input name=“x”+<%=i%> type="radio" value="D"><%=rs("D")%><br>
结果,他们的名字都变成了 “x”+1,"x"+2
并且,名字为"x"+1 ,"x"+2程序把两个名字认为是一样的名字
即当点选各单选选项时,虽然名字分别为"x"+1 ,"x"+2本来是两个题目,可以选两个选项,但是,却只能选一个选项。。可见程序把他们认成了一个~~~

难道全认为是“X”了??
个人觉得,控件名字程序自认为是以“开始,又以”结束,如果不存在“,则以空格作为控件名字结束。

本人是初学者,对ASP认识浅薄,有什么说的不对,还请各位大虾指正。。

另外,请教各位,msgbox()的用法,我在<%%>中,即运行于服务器的代码中使用msgbox()函数,可程序报错说没有权限。。是为什么。。



缺缺

职务:管理员
等级:8
金币:41.0
发贴:9620
#22005/5/14 10:59:02
1.属性加不加引号都可以,这个时HTML语言他本身并不需要很规范.

2.x+<%=i%>最后输出X+1,这是因为HTML本身没有运算的功能.比如我现在输入1+1,最后页面不会显示2.+作为运算符号或者连接符时在脚本语言里面的,你应该写在<%%>里面.如果你连这个都无法理解,那么最好从头开始学asp了


3.msgbox是弹出一个对话框,<%%>是在服务器运行,难道你想程序的服务器上弹出一个对话框,给谁看?在客户端弹出应该写在客户端脚本里面