请问*.hta格式文件的问题

要做一个简单的数字考试系统,能力有限,只能用asp+javascript+access07来做。我在网上看到的hta的资料,都是所有的网页代码都集合在同一个hta文件上执... 要做一个简单的数字考试系统,能力有限,只能用asp+javascript+access07来做。我在网上看到的hta的资料,都是所有的网页代码都集合在同一个hta文件上执行。请问如何设计? 展开
 我来答
网海1书生
科技发烧友

2012-03-30 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12315 获赞数:26235

向TA提问 私信TA
展开全部
hta文件其实和htm文件是一样的,把htm的文件扩展名改为hta就行了。然后就可以像一般可执行文件一样直接双击hta文件运行了,运行效果和htm文件在浏览器中是一样的。另外,一些在htm中受限制的功能,在hta文件中则可以使用,比如读取数据库、打开WScript.Shell组件等等(这是因为hta是由用户主动点击运行的,如果发生安全问题由用户承担责任;而htm文件是用户被动接受的,如果网页存在安全问题,用户可能在完全不知情的情况下受到损害。)。
因此你用设计htm的方式设计hta即可,两者惟一的区别就是hta多了HTA:APPLICATION标签,这个你百度一下就知道了。另外在hta中,尽量不要用超链接(不管target指向哪,它都会新开一个窗口的),而应该用按钮触发javascript或VBScript,然后把运行结果发送到页面上指定ID的标签(比如div)的innerHTML或innerText属性,这样就可以在同一个hta文件实现原来多个htm页面才能实现的功能。 当然,也可以用iframe,用一个hta调用多个htm的方式,这个相对简单一些。
更多追问追答
追问
请问那些创建用户、题目时要用到的查询修改数据库的语句,也要放到hta程序中写吗?
追答

set conn=createobject("adodb.connection")
conn.connectionstring="provider=Microsoft.Jet.OLEDB.4.0; Data Source=xcpt.mdb"
conn.open
set rs=createobject("adodb.recordset")
rs.open "select * from mydata",conn,1,1
do until rs.eof
'......
rs.movenext
loop
rs.close
set rs=nothing
conn.close
set conn=nothing

像这样的语句,放到htm中是不允许运行的,而hta中则可以.
注意哦,这是客户端的脚本,不是ASP中读取数据库的语句哦,也就是说是在本地读取数据库。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式