-
财务处的程序告一段落了 - [开发手记]
花了半个多月的时间为财务处写的程序,终于交付测试了,现在想起来,实际上也是很容易的程序,只是在这期间需求出现了很多问题,所以用了这么长时间。
程序的整个功能就是登记职工的所有个人收入,同时记税,外加汇总,这里面难度大一点的是税收的计算,在税收计算方法不太完全的情况下,难度就更大了。不管怎么说,还是完成了。
这一次程序设计中收获最大就是整个设计按照Web标准来做,将内容和表现彻底分开,同时也把模块之间的独立性加强了,这样后期维护就容易多了。这些在以前的程序开发中使用的很少,更准确的说以前的程序开发都是为了能按时完成任务和功能,从标准和技术上考虑的很少。
这个记帐程序刚开是的时候有人建议使用C/S模式,但对我来说,更快的还是B/S,毕竟有这么多的有点,早期时候也用VB为银行的一部门写过记帐程序,花了不少的时间,可是效果却不明显,因此,这次就换了中方式。在第一次为领导演示时,领导也问为何不用JSP?实际上也不是不可以,但是在时间很短的情况下,我还是选择了ASP,更何况也只是在他们内部使用。实际上在很早的时候就看过一本书,我觉得说得很有道理,在项目的开发中,利用新技术并不一定能很快的按时的完成,选择一种你最熟悉的,又能很快完成项目的技术时很好的选择,正是这样。
不管怎么说,这个程序告一段落了,虽然以后可能还要修改。下面是一些截图:
-
DIV+CSS实现菜单特效 - [开发手记]
DIV+CSS可以实现很多的页面效果,一下的代码就是利用DIV+CSS实现的菜单效果,当鼠标经过菜单链接时,菜单的页面背景会变化,这里需要两张图片,一张是链接时菜单的背景,另一张是鼠标经过时的图片,当然也可以使用背景颜色,我这里使用的带上圆角的背景图片。效果如下:
具体代码如下:
CSS代码
#topmenu {
height: 30px;
width: 500px;
margin: 0px;
clear: both;
}#topmenulist{
width: 100%;
margin:0 0 0 6px;
padding: 0;
text-align: center;
}#topmenulist ul, #topmenulist li{
margin: 0;
padding: 0;
display: inline;
list-style-type: none;
border: 0px none;
}#topmenulist a:link, #topmenulist a:visited{
float: left;
line-height:14px;
font-size: 15px;
font-weight: bold;
margin: 0;
text-decoration: none;
color: #ffffff;
background-image: url(topmenubg.jpg);
padding: 7px 15px 5px 17px;
}#topmenulist a:hover{
float: left;
line-height:14px;
font-size: 15px;
font-weight: bold;
margin: 0;
text-decoration: none;
color: #9c9a9c;
background-image: url(topmenubgblank.jpg);
padding: 7px 15px 5px 17px;
} -
一个早上,终于完成了一个组合查询,有了这个基础,后面的组合查询就方便多了。
这里有两个Javascript页面效果的技巧,是在我的程序中使用到的:1、在输入框中敲Enter,直接跳转到下一个输入框
实现这个功能实际上是将Enter转换成了Tab,这样就会实现顺序的跳转,但是必须要检测到现在敲的是Enter,在Javascript中有KeyDown事件,可以用来监测键盘事件,代码如下:
< script language=”javascript”>
function checkenter()
{
if(event.keyCode==13) //Enter的编码是13
event.keyCode=9; //Tab的编码是9
}
< /script>在文本框的地方启用KeyDown事件调用checkenter()
< input name=”employeename” type=”text” id=”employeename” size=”10″ maxlength=”10″ onkeydown=”checkenter();” />
此代码只在IE浏览器内有效,Firefox和Opera无效。2、鼠标经过表格的单元格或行时,背景颜色变化
这个是比较简单的,代码如下:
行的背景变化:
< tr onmouseover=”this.bgColor=’#eeeeee’;” onmouseout=”this.bgColor=’#ffffff’;”>
单元格的背景变化:
整个表格的背景变化:
< table onmouseover=”this.bgColor=’#eeeeee’;” onmouseout=”this.bgColor=’#ffffff’;”> -
ASP访问Excel文件 - [开发手记]
很长时间没有象这几天这样集中精力来写代码了,写代码中遇到了这样的问题,需要把Excel文件的内容读出来,显示出来,查找了一下资料,解决方法如下:
实际上只要把Excel文件当作数据库,里面的Sheet当作数据库中的表来操作就可以,不同的只是驱动程序不一样,具体代码如下:
set excelconn=server.createobject(”adodb.connection”)
strAddr = Server.MapPath(”uploaddata/testdata.xls”) ‘Excel源文件
Response.Write “源文件:”&strAddr&”
”
excelconn.open “Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;Data Source=” & strAddr ‘打开此文件‘建立excel记录集
set excelrs=server.createobject(”adodb.recordset”)sql=”select * from [Sheet1$]” ‘查询
excelrs.open sql,excelconn,1,1
While not excelrs.Eof
Response.write excelrs(0) &”,”&excelrs(1) &”,”& excelrs(2) &”,”& excelrs(3)&”
”
excelrs.Movenext
wend
excelrs.close()
set excelrs=nothing
excelconn.Close()
set excelconn=nothing -
页面加载时让光标聚焦默认的地方 - [开发手记]
这个方法有一定的实用性,特别是在反复录入数据的情况下,比如,一个页面需要反复的录入用户数据,当前一个用户数据提交后,在输入下一个用户数据时,光标会自动聚焦到默认的输入框里,就省去了使用鼠标的过程,提高用户的处理速度和软件的方便性。
这个问题只需要使用JavaScript中的对象事件focus就可以实现了。具体的代码如下:
首先是聚焦代码,这里将光标聚焦到默认的employeeid输入框中:
< script language=”javascript”>
function auto_focus()
{
if(document.getElementById(’employeeid’)!=null) //首先检查employeeid对象是否存在
document.employeeadd.employeeid.focus(); //将光标聚焦
}
< /script>在body标签中调用该函数,也就是让页面加载时调用该函数:
< body onload=”javascript:auto_focus()”>
输入框页面代码:
< form id=”employeeadd” name=”employeeadd” method=”post” action=”addemployee.asp”>
工号:< input name=”employeeid” type=”text” id=”employeeid” size=”6″ maxlength=”6″ />
< /form>< /span>>


