javascript中的各种条件的1.文本框输入限制输入限制

1.文本框输入限制

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

Java代码 复制代码
  1. <script>   
  2. function regInput(obj, reg, inputStr)   
  3. {   
  4. var docSel = document.selection.createRange()   
  5. if (docSel.parentElement().tagName != "INPUT"return false  
  6. oSel = docSel.duplicate()   
  7. oSel.text = ""  
  8. var srcRange = obj.createTextRange()   
  9. oSel.setEndPoint("StartToStart", srcRange)   
  10. var str = oSel.text + inputStr + srcRange.text.substr(oSel.text.length)   
  11. return reg.test(str)   
  12. }   
  13. </script>  
<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>



小写英文:

Java代码 复制代码
  1. <xmp style= "display:inline"> </xmp>   
  2. <input onkeypress = "return regInput(this, /^[a-z]*$/, String.fromCharCode(event.keyCode))"  
  3. onpaste = "return regInput(this, /^[a-z]*$/, window.clipboardData.getData('Text'))"  
  4. ondrop = "return regInput(this, /^[a-z]*$/, event.dataTransfer.getData('Text'))"  
  5. 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>



大写英文:

Java代码 复制代码
  1. <xmp style= "display:inline"> </xmp>   
  2. <input onkeypress = "return regInput(this, /^[A-Z]*$/, String.fromCharCode(event.keyCode))"  
  3. onpaste = "return regInput(this, /^[A-Z]*$/, window.clipboardData.getData('Text'))"  
  4. ondrop = "return regInput(this, /^[A-Z]*$/, event.dataTransfer.getData('Text'))"  
  5. style="ime-mode:Disabled">   
  6. <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>



任意数字:

Java代码 复制代码
  1. <xmp style="display:inline"> </xmp>   
  2. <input onkeypress = "return regInput(this, /^[0-9]*$/, String.fromCharCode(event.keyCode))"  
  3. onpaste = "return regInput(this, /^[0-9]*$/, window.clipboardData.getData('Text'))"  
  4. ondrop = "return regInput(this, /^[0-9]*$/, event.dataTransfer.getData('Text'))"  
  5. 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位小数:

Java代码 复制代码
  1. <xmp style="display:inline"> </xmp>   
  2. <input onkeypress = "return regInput(this, /^\d*\.?\d{0,2}$/,   
  3. String.fromCharCode(event.keyCode))"   
  4. onpaste = "return regInput(this, /^\d*\.?\d{0,2}$/,   
  5. window.clipboardData.getData('Text'))"   
  6. ondrop = "return regInput(this, /^\d*\.?\d{0,2}$/,   
  7. event.dataTransfer.getData('Text'))"   
  8. style="ime-mode:Disabled">  
<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>

日  期:

Java代码 复制代码
  1. <xmp style="display:inline"> </xmp>   
  2.   
  3. <input onkeypress = "return regInput(this, /^\d{1,4}   
  4. ([-\/](\d{1,2}([-\/](\d{1,2})?)?)?)?$/,   
  5. String.fromCharCode(event.keyCode))"   
  6.   
  7. onpaste = "return regInput(this, /^\d{1,4}([-\/](\d{1,2}   
  8. ([-\/](\d{1,2})?)?)?)?$/,   
  9. window.clipboardData.getData('Text'))"   
  10.   
  11. ondrop = "return regInput(this, /^\d{1,4}([-\/](\d{1,2}   
  12. ([-\/](\d{1,2})?)?)?)?$/,   
  13. event.dataTransfer.getData('Text'))"   
  14.   
  15. style="ime-mode:Disabled">  
<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>

任意中文

Java代码 复制代码
  1. <xmp style="display:inline"> </xmp>   
  2.   
  3. <input onkeypress = "return regInput(this, /^$/,   
  4. String.fromCharCode(event.keyCode))"   
  5.   
  6. onpaste = "return regInput(this, /^[\u4E00-\u9FA5]*$/,   
  7. window.clipboardData.getData('Text'))"   
  8.   
  9. ondrop = "return regInput(this, /^[\u4E00-\u9FA5]*$/,   
  10. event.dataTransfer.getData('Text'))"><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>



部分英文:

Java代码 复制代码
  1. <xmp style="display:inline"> </xmp>   
  2. <input onkeypress = "return regInput(this, /^[a-e]*$/,   
  3. String.fromCharCode(event.keyCode))"   
  4.   
  5. onpaste = "return regInput(this, /^[a-e]*$/,   
  6. window.clipboardData.getData('Text'))"   
  7.   
  8. ondrop = "return regInput(this, /^[a-e]*$/,   
  9. event.dataTransfer.getData('Text'))"   
  10.   
  11. style="ime-mode:Disabled">  
<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.不能展开右键,不能全选,不能复制的实现

Java代码 复制代码
  1. <body oncontextmenu="window.event.returnvalue=false"  
  2. onkeypress="window.event.returnvalue=false"  
  3. onkeydown="window.event.returnvalue=false"  
  4. onkeyup="window.event.returnvalue=false"  
  5. ondragstart="window.event.returnvalue=false"  
  6. onselectstart="event.returnvalue=false">   
  7. ...  
<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.禁止页面正文内容被选取

Java代码 复制代码
  1. <body oncontextmenu="return false" ondragstart="return false"  
  2. onselectstart ="return false" onselect="document.selection.empty()"  
  3. oncopy="document.selection.empty()" onbeforecopy="return false"onmouseup="document.selection.empty()">  
<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.避免别人把网页放在框架中

Java代码 复制代码
  1. <script language=“javascript”><!--if (self!=top){top.location=self.location;}-->< /script>  
<script language=“javascript”><!--if (self!=top){top.location=self.location;}-->< /script>



5.禁示查看源代码

Java代码 复制代码
  1. <frameset>   
  2. <frame src="你要保密的文件的URL">   
  3. </frameset>  
<frameset>
<frame src="你要保密的文件的URL">
</frameset>



6.关闭输入法

Java代码 复制代码
  1. <input style="ime-mode:disabled">  
<input style="ime-mode:disabled">



7.禁止图片下载

在这里的最后加入:

Java代码 复制代码
  1. oncontextmenu="return false" ondragstart="return false" onselectstart="return  
  2. false" scroll="auto"  
oncontextmenu="return false" ondragstart="return false" onselectstart="return
false" scroll="auto"



8.禁止缓存

Java代码 复制代码
  1. 在HEAD里加入:   
  2.   
  3. <meta http-equiv="Expires" CONTENT="0">   
  4. <meta http-equiv="Cache-Control" CONTENT="no-cache">   
  5. <meta http-equiv="Pragma" CONTENT="no-cache">  

你可能感兴趣的:(JavaScript,框架,cache)