表单提交验证类


Posted in Javascript onJuly 14, 2006

 >屏蔽功能类

1.1 屏蔽键盘所有键
<script language="javascript">
<!--
function document.onkeydown(){
   event.keyCode = 0;
   event.returnvalue = false;
}
-->
</script>

1.2 屏蔽鼠标右键

在body标签里加上oncontextmenu=self.event.returnvalue=false

或者

<script language="javascript">
<!--
function document.oncontextmenu() 

  return false; 

-->
</script>

function nocontextmenu()

    if(document.all) {
        event.cancelBubble=true;
        event.returnvalue=false; 
        return false; 
    }
}

或者

<body onmousedown="rclick()" oncontextmenu= "nocontextmenu()">

<script language="javascript">
<!--
function rclick()
{
    if(document.all) {
        if (event.button == 2){
            event.returnvalue=false;
        }
    }
}
-->
</script>

1.3 屏蔽 Ctrl+N、Shift+F10、F5刷新、退格键

<script language="javascript">
<!--
  //屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键
function window.onhelp(){return false} //屏蔽F1帮助
function KeyDown(){
  if ((window.event.altKey)&&
      ((window.event.keyCode==37)||   //屏蔽 Alt+ 方向键 ←
       (window.event.keyCode==39))){  //屏蔽 Alt+ 方向键 →
     alert("不准你使用ALT+方向键前进或后退网页!");
     event.returnvalue=false;
     }

     /* 注:这还不是真正地屏蔽 Alt+ 方向键,
     因为 Alt+ 方向键弹出警告框时,按住 Alt 键不放,
     用鼠标点掉警告框,这种屏蔽方法就失效了。以后若
     有哪位高手有真正屏蔽 Alt 键的方法,请告知。*/

  if ((event.keyCode == 8) && 
      (event.srcElement.type != "text" && 
      event.srcElement.type != "textarea" && 
      event.srcElement.type != "password") ||           //屏蔽退格删除键   
      (event.keyCode==116)||                            //屏蔽 F5 刷新键
      (event.ctrlKey && event.keyCode==82)){            //Ctrl + R
     event.keyCode=0;
     event.returnvalue=false;
     }
  if ((event.ctrlKey)&&(event.keyCode==78))   //屏蔽 Ctrl+n
     event.returnvalue=false;
  if ((event.shiftKey)&&(event.keyCode==121)) //屏蔽 shift+F10
     event.returnvalue=false;
  if (window.event.srcElement.tagName == "A" && window.event.shiftKey) 
      window.event.returnvalue = false;  //屏蔽 shift 加鼠标左键新开一网页
  if ((window.event.altKey)&&(window.event.keyCode==115)){ //屏蔽Alt+F4
      window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
      return false;}
  }
 /* 另外可以用 window.open 的方法屏蔽 IE 的所有菜单
第一种方法:
  window.open("你的.htm", "","toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0")
第二种方法是打开一个全屏的页面:
  window.open("你的.asp", "", "fullscreen=yes")
 */
//-->
</script>

1.4屏蔽浏览器右上角“最小化”“最大化”“关闭”键

<script language=javascript>
function window.onbeforeunload()
{
  if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)
  {
    window.event.returnvalue = "";
  }
}
</script>

或者使用全屏打开页面

<script language="javascript">
<!--
window.open(www.32pic.com,"32pic","fullscreen=3,height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no");
-->
</script>

注:在body标签里加上onbeforeunload="javascript:return false"(使不能关闭窗口)

1.5屏蔽F5键

<script language="javascript">
<!--
function document.onkeydown() 

    if ( event.keyCode==116) 
    { 
        event.keyCode = 0; 
        event.cancelBubble = true; 
        return false; 
    }
}
-->
</script>

1.6屏蔽IE后退按钮

在你链接的时候用 <a href="javascript:location.replace(url)">

1.7屏蔽主窗口滚动条

在body标签里加上 style="overflow-y:hidden"

1.8 屏蔽拷屏,不断地清空剪贴板

在body标签里加上onload="setInterval('clipboardData.setData(\'Text\',\'\')',100)"

1.9 屏蔽网站的打印功能

<style>
@media print {
   * { display: none }
}
</style>

1.10 屏蔽IE6.0 图片上自动出现的保存图标

方法一:
<META HTTP-EQUIV="imagetoolbar" CONTENT="no">
方法二:
<img galleryimg="no">

1.11 屏蔽页中所有的script

<noscrript></noscript>

<script language="javascript">
<!--
function CheckForm()
{
if (document.form.name.value.length == 0) {
   alert("请输入您姓名!");
   document.form.name.focus();
   return false;
}
   return true;
}
-->
</script>

2.2 比较两个表单项的值是否相同

<script language="javascript">
<!--
function CheckForm()
if (document.form.PWD.value != document.form.PWD_Again.value) {
   alert("您两次输入的密码不一样!请重新输入.");
   document.ADDUser.PWD.focus();
   return false;
}
   return true;
}
-->
</script>

2.3 表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等

<script language="javascript">
<!--
function isNumber(String)

    var Letters = "1234567890-"; //可以自己增加可输入值
    var i;
    var c;
      if(String.charAt( 0 )=='-')
 return false;
      if( String.charAt( String.length - 1 ) == '-' )
          return false;
     for( i = 0; i < String.length; i ++ )
     {
          c = String.charAt( i );
   if (Letters.indexOf( c ) < 0)
          return false;
}
     return true;
}
function CheckForm()
{
    if(! isNumber(document.form.TEL.value)) {
  alert("您的电话号码不合法!");
         document.form.TEL.focus();
         return false;
}
return true;
}
-->
</script>

2.4 表单项输入数值/长度限定

<script language="javascript">
<!--
function CheckForm() 
{
    if (document.form.count.value > 100 || document.form.count.value < 1)
{
 alert("输入数值不能小于零大于100!");
 document.form.count.focus();
 return false;
}
    if (document.form.MESSAGE.value.length<10)
{
 alert("输入文字小于10!");
 document.form.MESSAGE.focus();
 return false;
}
return true;
}
//-->
</script>

2.5 中文/英文/数字/邮件地址合法性判断

<SCRIPT LANGUAGE="javascript">
<!--

function isEnglish(name) //英文值检测
{
 if(name.length == 0)
  return false;
 for(i = 0; i < name.length; i++) {
  if(name.charCodeAt(i) > 128)
   return false;
 }
 return true;
}

function isChinese(name) //中文值检测
{
 if(name.length == 0)
  return false;
 for(i = 0; i < name.length; i++) {
  if(name.charCodeAt(i) > 128)
   return true;
 }
 return false;
}

function isMail(name) // E-mail值检测
{
 if(! isEnglish(name))
  return false;
 i = name.indexOf("@");
 j = name.lastIndexOf("@");
 if(i == -1)
  return false;
 if(i != j)
  return false;
 if(i == name.length)
  return false;
 return true;
}

function isNumber(name) //数值检测
{
 if(name.length == 0)
  return false;
 for(i = 0; i < name.length; i++) {
  if(name.charAt(i) < "0" || name.charAt(i) > "9")
   return false;
 }
 return true;
}

function CheckForm()
{
 if(! isMail(form.Email.value)) {
  alert("您的电子邮件不合法!");
  form.Email.focus();
  return false;
 }
 if(! isEnglish(form.name.value)) {
  alert("英文名不合法!");
  form.name.focus();
  return false;
 }
 if(! isChinese(form.cnname.value)) {
  alert("中文名不合法!");
  form.cnname.focus();
  return false;
 }
 if(! isNumber(form.PublicZipCode.value)) {
  alert("邮政编码不合法!");
  form.PublicZipCode.focus();
  return false;
 }
 return true;
}
//-->
</SCRIPT>

2.6 限定表单项不能输入的字符

<script language="javascript">
<!--

function contain(str,charset)// 字符串包含测试函数
{
  var i;
  for(i=0;i<charset.length;i++)
  if(str.indexOf(charset.charAt(i))>=0)
  return true;
  return false;
}

function CheckForm()
{
 if ((contain(document.form.NAME.value, "%\(\)><")) || (contain(document.form.MESSAGE.value, "%\(\)><")))
{
  alert("输入了非法字符");
  document.form.NAME.focus();
  return false;
}
  return true;
}
//-->
</script>

Javascript 相关文章推荐
document.designMode的功能与使用方法介绍
Nov 22 Javascript
JQuery里选择超链接的实现代码
May 22 Javascript
jquery无缝向上滚动实现代码
Mar 29 Javascript
JS的document.all函数使用示例
Dec 30 Javascript
JavaScript实现的一个日期格式化函数分享
Dec 06 Javascript
jQuery DOM删除节点操作指南
Mar 03 Javascript
基于jQuery插件实现环形图标菜单旋转切换特效
May 15 Javascript
Angular.js中控制器之间的传值详解
Apr 24 Javascript
jQuery添加新内容的四个常用方法分析【append,prepend,after,before】
Mar 19 jQuery
微信小程序JS加载esmap地图的实例详解
Sep 04 Javascript
VUE 实现动态给对象增加属性,并触发视图更新操作示例
Nov 29 Javascript
Vuex的各个模块封装的实现
Jun 05 Javascript
如何实现浏览器上的右键菜单
Jul 10 #Javascript
载入进度条 效果
Jul 08 #Javascript
让广告代码不再影响你的网页加载速度
Jul 07 #Javascript
一段实时更新的时间代码
Jul 07 #Javascript
根据分辨率不同,调用不同的css文件
Jul 07 #Javascript
鼠标图片振动代码
Jul 06 #Javascript
显示、隐藏密码
Jul 01 #Javascript
You might like
你应该知道PHP浮点数知识
2015/05/13 PHP
php实现简单的MVC框架实例
2015/09/23 PHP
PHP根据key删除数组中指定的元素
2019/02/28 PHP
aspx中利用js实现确认删除代码
2010/07/22 Javascript
理解Javascript_01_理解内存分配原理分析
2010/10/11 Javascript
JS 如果改变span标签的是否隐藏属性
2011/10/06 Javascript
使用javascript过滤html的字符串(注释标记法)
2013/07/08 Javascript
详细介绍8款超实用JavaScript框架
2013/10/25 Javascript
JQuery的$命名冲突详细解析
2013/12/28 Javascript
javascript去除字符串左右两端的空格
2015/02/05 Javascript
Javascript中的arguments与重载介绍
2015/03/15 Javascript
jquery关于事件冒泡和事件委托的技巧及阻止与允许事件冒泡的三种实现方法
2015/11/27 Javascript
jquery.cookie实现的客户端购物车操作实例
2015/12/24 Javascript
jquery实现的判断倒计时是否结束代码
2016/02/05 Javascript
jQuery实现页面评论栏中访客信息自动填写功能的方法
2016/05/23 Javascript
简单理解vue中Props属性
2016/10/27 Javascript
javascript+html5+css3自定义提示窗口
2017/06/21 Javascript
微信小程序下拉刷新界面的实现
2017/09/28 Javascript
javascript+jQuery实现360开机时间显示效果
2017/11/03 jQuery
简单实现jquery隔行变色
2017/11/09 jQuery
node.js的Express服务器基本使用教程
2019/01/09 Javascript
Javascript删除数组里的某个元素
2019/02/28 Javascript
[00:09]DOTA2全国高校联赛 精彩活动引爆全场
2018/05/30 DOTA
Python入门篇之函数
2014/10/20 Python
Python随机生成带特殊字符的密码
2016/03/02 Python
python中列表和元组的区别
2017/12/18 Python
Python语言的变量认识及操作方法
2018/02/11 Python
20个常用Python运维库和模块
2018/02/12 Python
python批量读取txt文件为DataFrame的方法
2018/04/03 Python
Python高级用法总结
2018/05/26 Python
PyCharm 解决找不到新打开项目的窗口问题
2021/01/15 Python
TripAdvisor印尼站:全球领先的旅游网站
2018/03/15 全球购物
毕业生教师求职信
2013/10/20 职场文书
水利公司纪检监察自我鉴定
2014/02/25 职场文书
房屋转让协议书
2014/10/18 职场文书
员工离职通知函
2015/04/25 职场文书