zoukankan      html  css  js  c++  java
  • JS+正则表达式对表单的一些简单验证

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
        <title></title>
        <script type="text/javascript">
            function fncKeyStop(evt) {
                if (!window.event) {
                    var keycode = evt.keycode;
                    var key = String.fromcharcode(keycode).toLowercase();
                    if (evt.ctrlkey && key == "v") {
                        evt.preventDefault();
                        evt.stopPropagation();
                    }
                }
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <h1>
                js验证输入框内容</h1>
            <br />
            <br />
            只能输入英文
            <input type="text" onkeyup="value=value.replace(/[^a-zA-Z]/g,'')">
            <br />
            <br />
            只能输入英文
            <input type="text" onkeyup="value=value.replace(/[^a-zA-]/g,'')" onkeydown="fncKeyStop(event)"
                onpaste="return false" oncontextmenu="return false" />
            无法粘贴,右键不会弹出粘贴菜单
            <br />
            <br />
            只能输入数字:
            <input onkeyup="this.value=this.value.replace(/D/g,'')" onafterpaste="this.value=this.value.replace(/D/g,'')">
            <br />
            <br />
            只能输入数字,小数点:
            <input name="price" type="text" onkeyup="value=value.replace(/[^d.]/g,'')">
            <br />
            <br />
            只能输入数字,小数点,下划线:
            <input name="price" type="text" onkeyup="value=value.replace(/[^d._]/g,'')">
            <br />
            <br />
            只能输入英文和数字:
            <input onkeyup="value=value.replace(/[W]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))">
            <br />
            <br />
            只能输入汉字:
            <input onkeyup="value=value.replace(/[^u4E00-u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))">
            <br />
            <br />
            禁止输入法输入:
            <input type="text" style="ime-mode: disabled">
            无法切换输入法
            <br />
            <br />
            只能输入中文、英文、数字、@符号和.符号:
            <input type="text" onkeyup="value=value.replace(/[^a-zA-0-9u4E00-u9FA5@.]/g,'')">
            <br />
            <br />
            不能为空:
            <input onblur="if(this.value.replace(/^ +| +$/g,'')=='')alert('不能为空!')">
            <br />
            <br />
        </div>
        </form>
    </body>
    </html>

    补充:

    1、取消按钮按下时的虚线框
    在input里添加属性值 hideFocus 或者 HideFocus=true
    2、只读文本框内容
    在input里添加属性值 readonly
    3、防止退后清空的TEXT文档(可把style内容做做为类引用)
    <INPUT style=behavior:url(#default#savehistory); type=text id=oPersistInput>
    4、ENTER键可以让光标移到下一个输入框
    <input onkeydown="if(event.keyCode==13)event.keyCode=9" >
    5、只能为中文(有闪动)
    <input onkeyup="value=value.replace(/[ -~]/g,'')" onkeydown="if(event.keyCode==13)event.keyCode=9">利用Ascii码的范围进行判断
    6、只能为数字(有闪动)
    <input onkeyup="value=value.replace(/[^d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))">利用Ascii码的范围进行判断
    7、只能为数字(无闪动)
    <input style="ime-mode:disabled" onkeydown="if(event.keyCode==13)event.keyCode=9" onKeyPress="if ((event.keyCode<48 || event.keyCode>57)) event.returnValue=false">利用Ascii码的范围进行判断
    8、只能输入英文和数字(有闪动)
    <input onkeyup="value=value.replace(/[W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))">利用js的正则表达式进行验证
    9、屏蔽输入法
    <input type="text" name="url" style="ime-mode:disabled" onkeydown="if(event.keyCode==13)event.keyCode=9">
    10、只能输入 数字,小数点,减号(-) 字符(无闪动)
    <input onKeyPress="if (event.keyCode!=46 && event.keyCode!=45 && (event.keyCode<48 || event.keyCode>57)) event.returnValue=false">利用Ascii码的范围进行判断
    11、只能输入两位小数,三位小数(有闪动)
    <input maxlength=9 onkeyup="if(value.match(/^d{3}$/))value=value.replace(value,parseInt(value/10)) ;value=value.replace(/.d*./g,'.')" onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 && event.keyCode!=45 || value.match(/^d{3}$/) || /.d{3}$/.test(value)) {event.returnValue=false}" id=text_kfxe name=text_kfxe> 

  • 相关阅读:
    html5--4-1 video/视频播放
    html5--3.22 综合实例03
    html5--3.21 课程小结与其他新增元素
    html5--3.20 新增的keygen元素
    UVA11324-- The Largest Clique(SCC+DP)
    memset函数具体说明
    XMPP协议的原理介绍
    探索WebKit内核(一)------ 菜鸟起步
    图像切割之(一)概述
    LeetCode——Count and Say
  • 原文地址:https://www.cnblogs.com/hopedilei/p/3186590.html
Copyright © 2011-2022 走看看