2007年6月12日星期二

使用JavaScript实现Web程序中多个文本框的批量选择、批量修改

我最近几年一直从事B/S信息系统的开发和实施工作,期间总会听到用户抱怨说上了信息系统还不如以前用Excel的时候方便。的确,无论是登录信息还是查找信息,Web程序都要比Excel麻烦很多。其中,不能方便地批量更新一直是用户抱怨较多的地方。最近,我使用纯Javascript实现了一个批量修改文本框中的数据的功能,请看看效果先。
这是初始页面:

现在,让我们选择第2、3、4、6、7个文本框:

输入新值:

结果:

实现方法概述

首先,将页面上所有的TextBox控件保存在数组text_boxes中;将每个TextBox控件的left、right、top、bottom信息保存到client_rects数组中。
然后,接管document.onmousemove、document.onkeydown、document.onkeyup事件,当Ctrl和Alt键同时按下时,在onmousemove事件中判断鼠标是否经过了某个TextBox控件(我们已经把每个TextBox控件的left、right、top、bottom信息保存到client_rects数组中^_^),将鼠标经过的TextBox控件保存到 _control_selected数组中。
最后,弹出对话框,要求用户给出新的值,然后修改 _control_selected 数组中的所有TextBox的值。

实际使用时...

实际使用时,我将实现这个功能的Javascript代码放到了一个用户控件中。以后,只要哪个页面需要这个批量修改的功能,直接将用户控件拖放到那个页面中就行了,不用多加一行代码。

下载源代码

您可以到这个地址http://download.csdn.net/source/193470下载全部源代码。需要安装VS2005才能打开工程并运行。如果您没有安装VS2005,可以使用记事本打开Default.aspx查看源代码。

没有评论: