Web开发

摘要: JavaScript 的成功让人津津乐道,为 Web 网页编写 JavaScript 代码已经是所有 Web 设计师的基本功,这门有趣的语言蕴藏着许多不为人熟知的东西,即使多年的 JavaScript 程序员,也未能完全吃透。本文从7个方面讲述 JavaScript 中那些你不很熟知但非常实用的技巧。阅读全文
posted @ 2010-04-24 16:08 深蓝 阅读(509) | 评论 (0) 编辑
摘要: FCKEditor本身非常强大,但是不知道为什么,默认情况下只支持上传图片和Flash,不支持上传一般的附件。网上有修改FCKEditor源代码,然后重新编译成dll,再放在服务器上。这种方法太麻烦了,经过简单的调试了下FCKEditor的代码,发现可以通过直接修改配置文件来上传文件。阅读全文
posted @ 2009-09-23 21:52 深蓝 阅读(1206) | 评论 (2) 编辑
摘要: CheckBoxList中有DataTextField和DataValueField可以用于设置绑定时的绑定对象属性,但是可惜针对 CheckBoxList却没有办法直接绑定一个Item是否被选中。于是我打算扩展一下CheckBoxList,使得该控件可以绑定Checked状态。阅读全文
posted @ 2009-08-04 00:10 深蓝 阅读(800) | 评论 (0) 编辑
摘要: 最近在做一个OA项目,其中有块协同的功能,类似于BBS,具体需求是什么样的我就不细讲了,我们这里就认为是一个BBS吧。一个帖子会有多个回帖,在帖子的展示页面上将帖子和所有回帖一起展示出来。当一个帖子的回复数达到上百时打开帖子就会特别慢,而且CPU和内存也会占用很高。打开页面的HTML源文件,可以看到有些回复数很高的帖子的页面大小也十分巨大,可能一个HTML页面就有1M大小。对于企业内部用户来说,1M其实也没有什么,毕竟是在局域网中,几秒钟就可以下载完成打开了,但是对于外网用户来说这就比较痛苦了。所以需要对这个页面进行减肥,将页面大小降下来。阅读全文
posted @ 2009-04-22 12:45 深蓝 阅读(609) | 评论 (2) 编辑
摘要: 在IE里面如果使用a标签的target=”_black”打开的新窗口,那么窗口的大小是由最后一次关闭窗口时窗口大小决定的,如果我们希望a标签打开的新窗口都是最大的窗口,那么我们需要使用window.open来实现。 另外在IE7里面还有另外一个问题就是如果我们是用a标签打开的新窗口,那么在window.close()的时候会弹出提示问是否关闭该窗口,而且这个问题不能使用window.opener=null来避免这个提示框,IE6可以,IE7不行。所以我们必须是使用window.open来打开新窗口,那么就可以使用window.close()而不会弹出关闭窗口的提示。 这个函数基于JQuery来写的,原理很简单,找到所有具有target为_black的a标签,将标签添加click函数。 阅读全文
posted @ 2009-04-14 17:18 深蓝 阅读(546) | 评论 (0) 编辑
摘要: 我在上一篇文章中讲到了如何使用C#模拟用户登录具有验证码网站。今天我就换位思考一下,站在网站开发人员的角度讲一讲验证码的的一个安全问题:及时销毁网站中的验证码。

为了方便大家理解,这里我就以一个投票的应用网站为例进行说明。投票网站首先要防止的就是用户不断点击投票按钮来重复投票;阅读全文
posted @ 2008-06-04 03:38 深蓝 阅读(3378) | 评论 (29) 编辑
摘要: 最近在调页面,所以要写CSS并且要考虑兼容性问题,所以转载这篇文章:
关于CSS对各个浏览器兼容已经是老生常谈的问题了, 网络上的教程遍地都是.以下内容没有太多新颖, 纯属个人总结, 希望能对初学者有一定的帮助.
一、CSS HACK
以下两种方法几乎能解决现今所有HACK.阅读全文
posted @ 2008-04-12 02:34 深蓝 阅读(373) | 评论 (0) 编辑
摘要: 在项目中经常遇到树状结构的对象比如产品分类、部门结构、地区……对于这类对象的呈现,一般都使用树控件(比如VS2005自带的TreeView控件)。但是树控件的使用和操作都比较复杂,对于一些比较简单的操作,比如单选其中的一个节点的情况则可用使用下拉列表框来代替。要在DropDownList中展示出树结构的层次,那就必须在每个节点的Text前加入一定的占位符,以实现层次的效果。
由于这种下拉列表控件在项目中经常使用,于是决定写一个通用的服务器控件出来。该控件继承自DropDownList,在使用中只需要为该控件设置用于数据绑定的DataTextField和DataValueField,以及新增的属性ChildProperty(string,对象的Child属性的名字)和DeepChar(string,在表示层次中使用的占位符,默认是“--”),设置了这4个属性后,在后台就只需要将树结构对象的Root节点作为DataSource,然后执行DataBind()即可。
阅读全文
posted @ 2008-02-25 10:45 深蓝 阅读(4070) | 评论 (11) 编辑
摘要: 在做项目时,我们一般会将aspx文件和其后台cs文件分开,然后将后台的cs文件编译成dll发布到生产环境中。如果我们的项目规定是每周1发布一次,现在发布后第二天客户在其中某个页面发现一个Bug导致业务无法正常处理,这个时候我们的项目正在添加新的功能,编码还没有完成,不可能为了这一个页面而将这没有完成的整个项目重新发布到生产环境中,这个时候怎么办拉?
我们知道aspx运行有两种模式,一种是编译运行,一种是解释运行.编译运行就是我们将后台c#代码编译成Dll,在aspx页面运行时调用这个dll来执行.而解释执行就是像是asp一样将后台代码和页面代码放在同一个aspx页面上,由IIS解释c#代码来运行.于是我们想到的解决办法就是专门针对这个页面把其后台CS代码中的bug修正,测试没有问题了,然后将后台cs文件转移到aspx文件中,让将这个新的aspx文件复制到正式环境中,覆盖原来错误的aspx文件。
将后台的cs代码转移到页面上主要是做如下操作:
1.去掉aspx头Page部分的CodeFile属性,这个属性指示了页面的后台文件的文件名.
2.在Page中添加阅读全文
posted @ 2007-07-25 15:25 深蓝 阅读(4175) | 评论 (30) 编辑
posted @ 2007-03-12 22:07 深蓝 阅读(285) | 评论 (0) 编辑


我要啦免费统计