javascript中的各种输入限制
1.文本框输入限制
实现限制输入大、小写英文,数字,浮点小数,日期,中文,部分英文,部分中文等众多功能。直接加入到html代码中即可使用。
<script>
js方法
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>
简单方法
<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">
<input onkeyup="this.value=this.value.replace(/\D/g,'')" onchange="this.value=this.value.replace(/\D/g,'')">
小写英文:<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">
分享到:
相关推荐
在VB2005(Visual Basic 2005)中,我们经常需要对文本框控件(TextBox)进行输入限制,确保用户只能按照特定的格式输入数据,例如只允许输入数字、字母...根据具体需求,可以灵活组合这些技术来实现各种输入限制策略。
下面将详细介绍如何实现EDIT控件的输入限制。 1. **消息过滤**: - 编写自定义的消息处理函数,通常是通过重载`WM_CHAR`消息。当用户在EDIT控件中按下键盘键时,系统会发送`WM_CHAR`消息。在这个消息处理函数中,...
以上各种方法根据不同的业务场景和数据格式要求,有效地限制和控制了用户在Web表单中的输入,是前端开发中常用的表单输入限制技术。在实际应用中,开发者需根据具体需求选择合适的方法,并结合后端验证,共同保障...
这篇博客“文本框的输入限制”可能探讨了如何在编程中实现这一功能。 在Web开发中,例如使用HTML5,我们可以直接通过`<input>`标签的属性来设定输入限制。例如,`type="text"`定义了一个基本的文本输入框,而`...
javasxript的常用文本框的输入限制代码 有正则,有keyup,也有粘贴限制
在Qt编程中,`Qt LineEdit输入数值限制实例`是一个常见的需求,特别是在用户界面设计中,我们经常需要确保用户在LineEdit控件中输入的数据符合特定的格式或范围。本实例将详细讲解如何利用Qt的`QRegExp`、`...
另一种方法是通过自定义`InputFilter`来实现输入限制。`InputFilter`可以过滤输入的字符,我们可以在其中实现字数检查并阻止超出限制的输入: ```java InputFilter filter = new InputFilter() { @Override ...
我们将在该函数中实现输入限制逻辑。 接下来,在`MyEdit.cpp`文件中实现`MyEdit`类: ```cpp #include "stdafx.h" #include "MyEdit.h" MyEdit::MyEdit() { } MyEdit::~MyEdit() { } BEGIN_MESSAGE_MAP(MyEdit,...
VBA 限制输入中文或只能输入数字 在 Excel 自动化中,经常需要对用户的输入进行限制,以确保数据的准确性和一致性。VBA 提供了多种方式来限制用户的输入,本文将介绍如何使用 VBA限制输入中文或只能输入数字。 ...
javacript控制文本输入限制javacript控制文本输入限制javacript控制文本输入限制
"字数输入限制按百分比例显示代码"是一种实现这一功能的技术,它允许开发者动态地根据输入框的总字符数限制来显示当前已输入的百分比,为用户提供实时反馈。 首先,我们要理解这个功能的基本工作原理。通常,我们会...
同时,我们显示一个消息框通知用户已达到输入限制。 3. **处理Backspace键**: 当用户按下Backspace键删除字符时,我们需要减少`inputByteCount`的值。因此,还需要为`txtInput`的`KeyDown`事件编写一个处理程序:...
### JS文本框限制输入多种情况知识点详解 #### 一、限制文本框只能输入数字(不允许输入小数点) 为了实现这一功能,可以采用`onkeyup`事件与正则表达式结合的方法来过滤非数字字符。具体实现代码如下: ```html ...
### Textarea限制输入文本长度的知识点 #### 一、前言 在Web开发过程中,为了提升用户体验并确保数据的有效性和安全性,对用户输入的数据进行适当的限制是非常必要的。特别是在表单填写场景下,如评论框、留言区等...
标题“自定义弹出输入框(输入长度限制)”表明我们关注的是一个特定的输入框控件,它不仅具有标准的输入功能,还增加了弹出式显示效果以及字符长度的限制。这通常用于优化用户在有限空间内进行文本输入的场景,比如...
总的来说,通过重载`CEdit`的`OnChar()`函数,我们可以灵活地控制文本框的输入行为,从而实现各种输入限制,如数字输入、字母输入、字符长度限制等。这种方法在创建用户界面时非常实用,能帮助提高用户体验并确保...
在探讨如何利用JavaScript限制文本框只输入正整数这一主题时,我们首先应当明确目标:确保用户在文本框中输入的数据仅包含正整数,即非负整数(不包括小数、负数以及任何非数字字符)。这在许多场景下至关重要,比如...
在IT领域,特别是软件开发与用户界面设计中,限制用户输入到特定类型的字段是一个常见的需求。例如,在财务或数学相关的应用程序中,可能需要确保用户仅能输入整数或小数,以避免数据输入错误。本篇文章将深入探讨...
以下将详细讲解如何在Swift中对`UITextField`和`UITextView`进行输入限制。 首先,让我们了解这两个控件的基本用法。`UITextField`通常用于简单的单行文字输入,如用户名、密码等,可以通过`text`属性获取或设置...