博文

B/S开发常用js技术(2007-08-20 12:57:00)

摘要:在b/s开发中经常用到的javaScript技术
一、验证类
1、数字验证内
  1.1 整数
  1.2 大于0的整数 (用于传来的ID的验证)
  1.3 负整数的验证
  1.4 整数不能大于iMax
  1.5 整数不能小于iMin
2、时间类
  2.1 短时间,形如 (13:04:06)
  2.2 短日期,形如 (2003-12-05)
  2.3 长时间,形如 (2003-12-05 13:04:06)
  2.4 只有年和月。形如(2003-05,或者2003-5)
  2.5 只有小时和分钟,形如(12:03)
3、表单类
  3.1 所有的表单的值都不能为空
  3.2 多行文本框的值不能为空。
  3.3 多行文本框的值不能超过sMaxStrleng
  3.4 多行文本框的值不能少于sMixStrleng
  3.5 判断单选框是否选择。
  3.6 判断复选框是否选择.
  3.7 复选框的全选,多选,全不选,反选
  3.8 文件上传过程中判断文件类型
4、字符类
  4.1 判断字符全部由a-Z或者是A-Z的字字母组成
  4.2 判断字符由字母和数字组成。
  4.3 判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母
  4.4 字符串替换函数.Replace();
5、浏览器类
  5.1 判断浏览器的类型
  5.2 判断ie的版本
  5.3 判断客户端的分辨率
 
6、结合类
  6.1 email的判断。
  6.2 手机号码的验证
  6.3 身份证的验证
  二、功能类 1、时间与相关控件类
  1.1 日历
  1.2 时间控件
 ......

阅读全文(1597) | 评论:0

javascript获得地址栏参数(2007-08-20 12:54:00)

摘要:代码如下:大家试试看吧! <script language="JavaScript">
<!--
function Request(strName)
{
var strHref = "www.abc.com/index.htm?a=1&b=1&c=测试测试";
var intPos = strHref.indexOf("?");
var strRight = strHref.substr(intPos + 1); var arrTmp = strRight.split("&");
for(var i = 0; i < arrTmp.length; i++)
{
var arrTemp = arrTmp[i].split("="); if(arrTemp[0].toUpperCase() == strName.toUpperCase()) return arrTemp[1];
}
return "";
} alert(Request("a"));
alert(Request("b"));
alert(Request("c"));
//-->
</script>   <script>
String.prototype.getQuery = function(name)
{
  var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
  var r = this.substr(this.indexOf("\?")+1).match(reg);
  if (r!=null) return unescape(r[2]); return null;
}
var str ="www.abc.com/index.htm?a=1&b=1&c=测试测试";
alert(str.getQuery("a"));
alert(str.getQuery("b"));
alert(str.getQuery("c"));
</script>......

阅读全文(1891) | 评论:0

JavaScript在IE地址栏中的妙用(2007-08-20 12:53:00)

摘要:完全打开页面后,在该页的在IE地址栏 或 按Ctrl+O 输入以下代码,回车,就可以得到相应的效果: 1.显示网页中的所有图片
javascript:Ai7Mg6P='';for%20(i7M1bQz=0;i7M1bQz<document.images.length;i7M1bQz++){Ai7Mg6P+='<img%20src='+document.images[i7M1bQz].src+'><br>'};if(Ai7Mg6P!=''){document.write('<center>'+Ai7Mg6P+'</center>');void(document.close())}else{alert('No%20images!')} 2.显示网页中除图片的其他
javascript:for(jK6bvW=0;jK6bvW<document.images.length;jK6bvW++){void(document.images[jK6bvW].style.visibility='hidden')} 3.显示网页源代码(对于加密过的可以直接显示其加密前的源代码)
javascript:s=document.documentElement.outerHTML;document.write('<body></body>');document.body.innerText=s; 4.网页放大1.5倍
javascript:void(s=document.body.style);void(z=s.getAttribute('zoom'));if(z){s.setAttribute('zoom',(parseInt(z)+50)+'%');}else s.setAttribute('zoom','150%') 5.网页缩小0.5倍
javascript:void(s=document.body.style);void(z=s.getAttribute('zoom'));if(z){s.setAttribute('zoom',(parseInt(z)-50)+'%');}else s.setAttribute('zoom','50%') 6.用IE做简单计算......

阅读全文(3406) | 评论:0

javascript小技巧二(2007-08-20 12:49:00)

摘要://访问剪贴板 (1)拖拽访问
event.dataTransfer.setData("URL", oImage.src);
sImageURL = event.dataTransfer.getData("URL")
(2)普通访问
window.clipboardData.setData("Text",oSource.innerText);
window.clipboardData.getData("Text"); //操作COOKIE
function SetCookie(sName, sValue)
{
 document.cookie = sName + "=" + escape(sValue) + "; ";
}
function GetCookie(sName)
{
 var aCookie = document.cookie.split("; ");
 for (var i=0; i < aCookie.length; i++)
 {
  
  var aCrumb = aCookie[i].split("=");
  if (sName == aCrumb[0]) 
  return unescape(aCrumb[1]);
 }
 
}
function DelCookie(sName)
{
document.cookie = sName + "=" + escape(sValue) + "; expires=Fri, 31 Dec 1999 23:59:59 GMT;";
}
//setTimeout增加参数 <script>
var _st = window.setTimeout;
window.setTimeout = function(fRef, mDelay) {
 if(typeof fRef == 'function'){
  ......

阅读全文(2745) | 评论:0

JavaScript小技巧一(2007-08-20 12:47:00)

摘要:事件源对象
event.srcElement.tagName
event.srcElement.type
捕获释放
event.srcElement.setCapture(); 
event.srcElement.releaseCapture(); 
事件按键
event.keyCode
event.shiftKey
event.altKey
event.ctrlKey
事件返回值
event.returnValue
鼠标位置
event.x
event.y
窗体活动元素
document.activeElement
绑定事件
document.captureEvents(Event.KEYDOWN);
访问窗体元素
document.all("txt").focus();
document.all("txt").select();
窗体命令
document.execCommand
窗体COOKIE
document.cookie
菜单事件
document.oncontextmenu
创建元素
document.createElement("SPAN"); 
根据鼠标获得元素:
document.elementFromPoint(event.x,event.y).tagName=="TD
document.elementFromPoint(event.x,event.y).appendChild(ms) 
窗体图片
document.images[索引]
窗体事件绑定
document.onmousedown=scrollwindow;
元素
document.窗体.elements[索引]
对象绑定事件
document.all.xxx.detachEvent('onclick',a);
插件数目
navigator.plugins
取变量类型
typeof($js_......

阅读全文(2416) | 评论:0

HttpHandler和HttpModule(2007-08-15 18:20:00)

摘要:ASP.Net处理Http Request时,使用Pipeline(管道)方式,由各个HttpModule对请求进行处理,然后到达HttpHandler,HttpHandler处理完之后,仍经过Pipeline中各个HttpModule的处理,最后将HTML发送到客户端浏览器中。ASP.Net系统本身配置有很多HttpHandler和HttpModule,以处理aspx等.Net标准的页面文件,以及这些页面文件中标准的事件处理等。查看%System%/Microsoft.NET\Framework\v2.0.50727\CONFIG目录下的web.config文件中的httpHandlers和httpModules节点,可以看到这些配置。如果有兴趣,可以使用Reflector查看.Net系统中相关的类和方法,了解.Net如何处理以及做了什么处理。.Net也提供了一套机制来开发自定义的HttpHandler和HttpModule,均可以用于对HttpRequest的截取,完成自定义的处理。 HttpModule 继承System.Web.IHttpModule接口,实现自己的HttpModule类。必须要实现接口的两个方法:Init和Dispose。在Init中,可以添加需要截取的事件;Dispose用于资源的释放,如果在Init中创建了自己的资源对象,请在Dispose中进行释放。 namespace MyModule
{
  public class MyHttpModule : IHttpModule
  {
    public MyHttpModule()
    {
    }     public void Init(HttpApplication r_objApplication)
    {
      r_objApplication.BeginRequest += new EventHandler(this.BeginRequest);
  &nb......

阅读全文(3058) | 评论:0

API函数大全(2007-08-08 11:30:00)

摘要:1. API之网络函数

WNetAddConnection 创建同一个网络资源的永久性连接
WNetAddConnection2 创建同一个网络资源的连接
WNetAddConnection3 创建同一个网络资源的连接
WNetCancelConnection 结束一个网络连接
WNetCancelConnection2 结束一个网络连接
WNetCloseEnum 结束一次枚举操作
WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接
WNetDisconnectDialog 启动一个标准对话框,以便断开同网络资源的连接
WNetEnumResource 枚举网络资源
WNetGetConnection 获取本地或已连接的一个资源的网络名称
WNetGetLastError 获取网络错误的扩展错误信息
WNetGetUniversalName 获取网络中一个文件的远程名称以及/或者UNC(统一命名规范)名称
WNetGetUser 获取一个网络资源用以连接的名字
WNetOpenEnum 启动对网络资源进行枚举的过程

2. API之消息函数

BroadcastSystemMessage 将一条系统消息广播给系统中所有的顶级窗口
GetMessagePos 取得消息队列中上一条消息处理完毕时的鼠标指针屏幕位置
GetMessageTime 取得消息队列中上一条消息处理完毕时的时间
PostMessage 将一条消息投递到指定窗口的消息队列
PostThreadMessage 将一条消息投递给应用程序
RegisterWindowMessage 获取分配给一个字串标识符的消息编号
ReplyMessage 答复一个消息
SendMessage 调用一个窗口的窗口函数,将一条消息发给那个窗口
SendMessageCallback 将一条消息发给窗口
SendMessageTimeout 向窗口发送一条消息
SendNotifyMessage 向窗口发送一条消息

3. API之文件处理函数 <......

阅读全文(2004) | 评论:0

全国省市数据库(2007-08-01 13:03:00)

摘要:[引用:地址不明确了!] --不足:23山东和16山东重复
--创建DBPromary数据库
create database DBPromary
use DBPromary
go --创建promary表
create table promary
(
 proID int primary key,
 proName varchar(50) not null
) ----------------------------------------------------------------------------------------------------------------------------------------
--中国34个省级行政单位 23个省 5个自治区 4个直辖市 2特别行政区
insert into promary values(1,'北京市')
insert into promary values(2,'天津市')
insert into promary values(3,'上海市')
insert into promary values(4,'重庆市')
insert into promary values(5,'河北省')
insert into promary values(6,'山西省')
insert into promary values(7,'台湾省')
insert into promary values(8,'辽宁省')
insert into promary values(9,'吉林省')
insert into promary values(10,'黑龙江省')
insert into promary values(11,'江苏省')
insert into promary values(12,'浙江省')
insert into promary values(13,'安徽省')
insert into promary values(14,'福建省')
insert into promary values(15,'江西省')
inse......

阅读全文(42475) | 评论:3

C#开发SmartPhone程序入门(2007-08-01 12:58:00)

摘要:使用C#开发SmartPhone程序入门
本文的目的是引导SmartPhone编程的初学者进入SmartPhone世界,以及学会如何使用C#编写SmartPhone程序。本文首先介绍了什么是SmartPhone,以及SmartPhone的一些特性和用于编程的API。为了更好地掌握如何使用C#编写SmartPhone程序,在本文还提供了一个使用C#编写的简单的SmartPhone程序的例子,读者可以通过这个例子快速地掌握如何使用C#为SmartPhone编写程序。   近来,移动这个新兴的领域正在受到许多移动设备的使用者和一些世界级的公司的关注和追捧。现在移动设备使用了先进的信息访问和获取技术,用户可以通过移动设备访问到世界的任何角落,因此,可以毫不夸张地说,先进的移动设备将使人们如虎添翼。   就象任何其它技术的快速发展一样,移动设备也在迅猛地发展。可以肯定地说,移动设备将创造一个新世界,无论是平民还是富翁,移动设备都将成为他们的好帮手。也许在不远的将来,它还会以其它的形式出现,到那时,移动设备将成为你生活的一部分。   真是太棒了,开发人员除了可以做手头的工作…事实上,他们完全可以进入一个另人激动、充满了刺激的世界,在这个世界中,颠覆了传统的桌面和Web开发。在这个世界中,有新的技术、新的挑战、新的机会,当然,更重要的是,有新的挣钱方法…$Money$。   移动设备的发展   移动设备发展到今天已经变得丰富多彩,现在我们有各种各样的移动设备可以选择,如手持设备,Pocket PC,PDA等等。现在移动设备正在试图利用手机已被全球的人们普遍使用的优势迅猛发展。   今天的移动电话市场已经有多种多样的型号可供选择。目前,手机市场已经被使用Symbion操作系统的Nokia、索尼和三星等公司垄断。   就象当年的Web浏览器市场一样,Microsoft在移动世界中也是姗姗来迟。今天的Microsoft已经拥有了自己的用于移动设备的操作,它就是Microsoft Windows Mobile2003,还有更为强大的WinCE4.2。那些使用Microsoft操作系统的手机正在蚕食市场份额,并且有越来越多的开发人员也转向了Microsoft阵营。   按着Microsoft的一贯做法,Microsoft在推出相应的手机和操作系统后,在第一时间就为开......

阅读全文(2548) | 评论:0

图象文件和XML文件的互换(2007-08-01 12:55:00)

摘要:利用.NET 框架下的FromBase64String和ToBase64String方法可以很容易地实现图象文件和XML文件的互换。这样可以轻易解决以XML格式保存图片的问题。代码如下: Public Class Form1
            Inherits System.Windows.Forms.Form
            #Region " Windows 窗体设计器生成的代码 "
            Public Sub New()
            MyBase.New()
            InitializeComponent()
            '在 InitializeComponent() 调用之后添加任何初始化
            End Sub
            '窗体重写处置以清理组件列表。
            Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
&nbs......

阅读全文(2150) | 评论:0