`
蛤蟆仙人
  • 浏览: 118303 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

javascript中的各种输入限制(转)

阅读更多

1.文本框输入限制

实现限制输入大、小写英文,数字,浮点小数,日期,中文,部分英文,部分中文等众多功能。直接加入到html代码中即可使用。

<script>
function regInput(obj, reg, inputStr)
{
var docSel = document.selection.createRange()
if (docSel.parentElement().tagName != "INPUT") return false
oSel = docSel.duplicate()
oSel.text = ""
var srcRange = obj.createTextRange()
oSel.setEndPoint("StartToStart", srcRange)
var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)
return reg.test(str)
}
</script>

小写英文:<xmp style= "display:inline"> </xmp>
<input onkeypress = "return regInput(this, /^[a-z]*$/, String.fromCharCode(event.keyCode))"
onpaste = "return regInput(this, /^[a-z]*$/, window.clipboardData.getData('Text'))"
ondrop = "return regInput(this, /^[a-z]*$/, event.dataTransfer.getData('Text'))"
style="ime-mode:Disabled"><br>

大写英文:<xmp style= "display:inline"> </xmp>
<input onkeypress = "return regInput(this, /^[A-Z]*$/, String.fromCharCode(event.keyCode))"
onpaste = "return regInput(this, /^[A-Z]*$/, window.clipboardData.getData('Text'))"
ondrop = "return regInput(this, /^[A-Z]*$/, event.dataTransfer.getData('Text'))"
style="ime-mode:Disabled">
<br>

任意数字:<xmp style="display:inline"> </xmp>
<input onkeypress = "return regInput(this, /^[0-9]*$/, String.fromCharCode(event.keyCode))"
onpaste = "return regInput(this, /^[0-9]*$/, window.clipboardData.getData('Text'))"
ondrop = "return regInput(this, /^[0-9]*$/, event.dataTransfer.getData('Text'))"
style="ime-mode:Disabled"><br>

限2位小数:<xmp style="display:inline"> </xmp>
<input onkeypress = "return regInput(this, /^\d*\.?\d{0,2}$/, 
String.fromCharCode(event.keyCode))"
onpaste = "return regInput(this, /^\d*\.?\d{0,2}$/, 
window.clipboardData.getData('Text'))"
ondrop = "return regInput(this, /^\d*\.?\d{0,2}$/, 
event.dataTransfer.getData('Text'))"
style="ime-mode:Disabled">

如: 123.12<br>

日  期:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^\d{1,4}
([-\/](\d{1,2}([-\/](\d{1,2})?)?)?)?$/, 
String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^\d{1,4}([-\/](\d{1,2}
([-\/](\d{1,2})?)?)?)?$/, 
window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^\d{1,4}([-\/](\d{1,2}
([-\/](\d{1,2})?)?)?)?$/, 
event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled">

如: 2002-9-29<br>

任意中文:<xmp style="display:inline"> </xmp>

<input onkeypress = "return regInput(this, /^$/, 
String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[\u4E00-\u9FA5]*$/, 
window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[\u4E00-\u9FA5]*$/, 
event.dataTransfer.getData('Text'))"><br>

部分英文:<xmp style="display:inline"> </xmp>
<input onkeypress = "return regInput(this, /^[a-e]*$/, 
String.fromCharCode(event.keyCode))"

onpaste = "return regInput(this, /^[a-e]*$/, 
window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[a-e]*$/, 
event.dataTransfer.getData('Text'))"

style="ime-mode:Disabled">

范围: a,b,c,d,e<br>

部分中文:<xmp style="display:inline"> </xmp>
<script language=javascript>

function checkChinese(oldLength, obj)
{
var oTR = window.document.selection.createRange()
var reg = /[^一二三四五六七八九十]/g
oTR.moveStart("character", -1*(obj.value.length-oldLength))
oTR.text = oTR.text.replace(reg, "")
}
</script>

<input onkeypress="return false" onkeydown=
"setTimeout('checkChinese('+this.value.length+','+this.uniqueID+')', 
1)"

onpaste = "return regInput(this, /^[一二三四五六七八九十]*$/, 
window.clipboardData.getData('Text'))"

ondrop = "return regInput(this, /^[一二三四五六七八九十]*$/,
event.dataTransfer.getData('Text'))">

范围: 一二三四五六七八九十<br>

2.不能展开右键,不能全选,不能复制的实现

<body oncontextmenu="window.event.returnvalue=false" 
onkeypress="window.event.returnvalue=false" 
onkeydown="window.event.returnvalue=false" 
onkeyup="window.event.returnvalue=false" 
ondragstart="window.event.returnvalue=false" 
onselectstart="event.returnvalue=false">
... 
</body>

3.禁止页面正文内容被选取

<body oncontextmenu="return false" ondragstart="return false" 
onselectstart ="return false" onselect="document.selection.empty()" 
oncopy="document.selection.empty()" onbeforecopy="return false"onmouseup="document.selection.empty()">

4.避免别人把网页放在框架中

<script language=“javascript”><!--if (self!=top){top.location=self.location;}-->< /script>

5.禁示查看源代码

<frameset> 
<frame src="你要保密的文件的URL"> 
</frameset>

6.关闭输入法

<input style="ime-mode:disabled">

7.禁止图片下载

在这里的最后加入:

oncontextmenu="return false" ondragstart="return false" onselectstart="return 
false" scroll="auto"

8.禁止缓存

在HEAD里加入:

<meta http-equiv="Expires" CONTENT="0"> 
<meta http-equiv="Cache-Control" CONTENT="no-cache"> 
<meta http-equiv="Pragma" CONTENT="no-cache">
 
分享到:
评论

相关推荐

    javascript 表单输入内容限制

    ### JavaScript表单输入内容限制详解 #### 一、引言 在Web开发中,表单是用户与网站交互的...此外,还可以结合正则表达式的强大功能,实现更为复杂的输入限制逻辑。希望本文能够帮助读者更好地理解并掌握这些技巧。

    ReactAngularEmber和纯JavaScript的输入格式限制控件

    对于纯JavaScript环境,我们没有框架的便利性,但依然可以实现输入限制。HTML5提供了`pattern`属性用于基本的正则表达式验证,但我们通常需要在`addEventListener`中监听`input`或`change`事件,然后用JavaScript...

    javascript正则表达式限制文本框输入

    通过javascript和正则表达式对文本框输入的限制

    Javascript密码输入控件

    7. **输入限制** 为了防止某些攻击,开发者可以限制输入的字符类型,比如禁止输入非字母数字字符,或者限制连续的相同字符。 8. **密码重置** 提供一个“忘记密码”功能,通常会引导用户通过电子邮件或手机短信...

    JavaScript客户端输入验证

    JavaScript客户端输入验证是Web开发中不可或缺的一环,它主要用于在用户提交数据到服务器之前检查数据的有效性和格式。这种验证可以防止无效数据的提交,减轻服务器的负担,提高用户体验,因为错误提示可以即时显示...

    使用JavaScript限制TextArea多行文本域的可输入字数

    总结起来,通过JavaScript我们可以轻松地实现对`&lt;textarea&gt;`的字数限制功能,包括监听输入事件、检查字符数、限制输入以及提供实时反馈。这样的功能对于优化用户界面和提高网站质量具有重要意义。通过结合源码和工具...

    文本框的输入限制

    总之,“文本框的输入限制”这个话题涵盖了前端和后端的多种技术,包括HTML5属性、JavaScript事件处理、服务器端验证以及移动应用开发中的输入控制。理解并熟练运用这些方法,有助于构建更健壮、更安全的用户界面。...

    Javascript判断用户输入的合法性的函数

    ### 一、JavaScript输入验证概述 在Web开发中,对用户输入进行验证是非常重要的一步。不正确的数据可能导致应用错误或安全漏洞。通过JavaScript,开发者可以在客户端即时地验证用户输入,提高用户体验并减轻服务器...

    软键盘(JavaScript模拟软键盘输入密码)

    在JavaScript中,我们可以操作DOM(文档对象模型)来改变网页的内容和结构,以及处理用户事件,如点击、键盘输入等。 要创建一个JavaScript模拟软键盘,我们需要以下几个步骤: 1. **设计布局**:创建HTML结构,这...

    字数输入限制按百分比例显示代码

    总结起来,"字数输入限制按百分比例显示代码"是通过结合HTML、CSS和JavaScript来实现的一种交互式用户体验优化技术。它不仅限制了用户输入的字符数,还提供了实时反馈,使用户清楚地知道他们已输入的字符占最大允许...

    用javascript代码实现限制表单文本域输入字数的功能

    ### 使用JavaScript代码实现限制表单文本域输入字数的功能 #### 背景与目标 在Web开发中,为了提高用户体验、确保数据的有效性和安全性,经常需要对用户输入的数据进行限制。例如,对于某些表单字段(如评论、留言...

    javascript实现汉字转拼音

    在JavaScript编程语言中,汉字转拼音是一项常见的需求,特别是在处理用户输入、文本分析或语音合成等场景。要实现这一功能,通常需要借助于特定的库或者API,因为JavaScript本身并不直接支持这种转换。这里我们将...

    jquery 插件 文本框输入限制 汉字,字母

    本篇文章将深入探讨如何使用jQuery插件来实现文本框(input)的输入限制,仅允许用户输入汉字和字母。 首先,我们需要理解jQuery插件的基本结构。一个简单的jQuery插件通常包含一个函数,该函数接收jQuery对象作为...

    Javascript只能输入数字或汉字

    在JavaScript中,限制用户输入只能为数字或汉字的需求在网页交互和表单验证中非常常见。这涉及到JavaScript的事件处理、正则表达式以及DOM操作等基础知识。下面将详细讲解如何实现这一功能。 首先,我们需要了解...

    javascript简单判断输入内容是否合法的方法

    在JavaScript中,判断输入内容是否合法通常涉及到字符串的验证,特别是使用正则表达式(Regular Expression)进行复杂的字符匹配。本篇文章将通过一个实例来介绍如何使用JavaScript来判断输入的用户名是否只包含数字...

    javascript日期时间输入控件

    JavaScript日期时间输入控件在网页开发中非常常见,它们提供了用户友好的界面,方便用户选择日期和时间。这里我们讨论的是一款名为"My97DatePicker3.0.1"的控件,它以其丰富的功能、可定制的皮肤和良好的稳定性而受...

    输入字数限制百分比的js超好用

    在JavaScript(JS)中,对输入的字数进行限制是一项常见的需求,特别是在用户交互界面设计时,例如评论、表单填写等场景。标题"输入字数限制百分比的js超好用"指的是一个JS功能,它能帮助开发者限制用户输入的字符数...

    js限制文本框只输入正整数

    在探讨如何利用JavaScript限制文本框只输入正整数这一主题时,我们首先应当明确目标:确保用户在文本框中输入的数据仅包含正整数,即非负整数(不包括小数、负数以及任何非数字字符)。这在许多场景下至关重要,比如...

    Javascript实现对输入各种常用数据的格式限定

    对日常使用身份证、生日、邮箱等23种数据输入做限制,代码可以直接嵌入使用,欢迎下载。

Global site tag (gtag.js) - Google Analytics