程序一:
<% sub type_onchange
detail=frmform.type.value
set lms=server.createobject("adodb.recordset")
lms.open "select * from detail where user='"&detail&"'",conn,0,1
if not lms.eof then
frmform.medicine.text=lms("name")
end if
lms.close
set lms=nothing
end sub
%>
程序二:
我做的是有两个选择框,在第一个选择框是一级目录,第一个框选择的不同,第二个显示的内容就不相同,两个框的内容都是从数据库里读出来的,我希望在第一个选择框选择后不用重新调入页面而第二个框就会自动变化,就象脚本一样,有没有什么办法啊?
上面两个程序都无法运行,因为:
在asp中,前后台的程序是截然分开的,因为HTTP协议本身是无状态的,客户端在得到服务器端发送的HTML文本后就已经和服务器端失去联系了,如果要执行服务器端的脚本,只有两个办法:重新向服务器端提出请求,重新得到HTML内容或者是使用remote scripting技术,利用java applet实现保持状态的连接,因此服务器端的脚本和客户端脚本是不能直接混合使用的。
你的那段代码1的错误是必然的,因为form对象存在于客户端,服务器端没有这些对象,当然也就去不到值了。
代码2的错误则在于混淆了客户端和服务器端的区别:<%%>或中的脚本是在服务器端执行的,这一步处理完之后才返回给客户端,客户端的脚本才能执行。也就是说<%%>中间的脚本会先执行,这时服务器端的detail没有赋值,vbs默认为空,最后的sql就是select * from detail where user=''当然取不到值了。
大家有没有什么可以解决的方法啊?
http://www.cas.net.cn