请问如何防止输入\斜杠键 function test(e) { if (e.keyCode == 220) { e.preventDefault ? e.preventDefault() : e.returnValue = false; } } 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <script type="text/javascript"> function test(obj){ if(event.keyCode==220){ obj.value = obj.value.substring(0,obj.value.length -1); } } </script> <title>test</title> </head> <body> <input id="abc" onkeyup ="test(this);"> </body></html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <script type="text/javascript"> function test(e) { if (e.keyCode == 220) { e.preventDefault ? e.preventDefault() : e.returnValue = false; alert("OK"); } } </script> <title>test</title> </head> <body> <input id="abc" onkeydown="test();"> </body></html>Chrome浏览器下无反应。 <input id="abc" onkeydown="test(event);"> 这个方法确实可行。<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <script type="text/javascript"> function test(obj){ if(event.keyCode==220){ obj.value = obj.value.substring(0,obj.value.length -1); } } </script> <title>test</title> </head> <body> <input id="abc" onkeyup ="test(this);"> </body></html>如果用onkeydown的话输入框里面还是会有\斜杠,那如果用onkeydown能否做到按下后输入框没有\斜杠么<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <script type="text/javascript"> function test(e) { if (e.keyCode == 220) { e.preventDefault ? e.preventDefault() : e.returnValue = false; alert("OK"); } } </script> <title>test</title> </head> <body><input id="abc" onkeydown="test(event);"> </body></html> 本帖最后由 showbo 于 2014-02-14 16:56:35 编辑 @showbo你的这个方法输入框里面还是会有斜杠。 @showboalert语句去除确实可以,不过如果我下面还要执行其他代码呢 会影响嘛。 if (e.keyCode == 220) { e.preventDefault ? e.preventDefault() : e.returnValue = false; ... ... ... } 奇怪,都什么版本的chrome,我这里 25.0.1364.172 m 没有问题。。最近碰到一个也说阻止不了字符输入,不行你就只能替换了 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>test</title> <script type="text/javascript"> function test(ev){ ev = ev || window.event; var _key = ev.keyCode || ev.which; //需要注意的是:onkeydown与onkeypress获取的keyCode是不同的 if(_key == 92){ alert("触发\斜杠键"); ev.preventDefault ? ev.preventDefault() : (ev.returnValue = false); } } </script> </head> <body> <input type="text" id="abc" onkeypress="test(event);"/> </body> </html> 补充一下.省得误导LZ.只有仅字符键的事件捕捉你可以使用onkeypress,如果是系统功能键,非字符键的你需要使用onkeydown 不会影响他们的代码,alert会挂起代码执行,导致preventDefault执行失败什么的 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <script type="text/javascript"> function test(obj,e){ if(e.keyCode==220){ if (typeof window.addEventListener != 'undefined') { obj.addEventListener('keyup',function(){obj.value = obj.value.substring(0,obj.value.length -1);}); } else { obj.attachEvent('keyup',function(){obj.value = obj.value.substring(0,obj.value.length -1);}); } } } </script> <title>test</title> </head> <body> <input id="abc" onkeydown ="test(this,event);"> </body></html> 为什么不阻止复制行为:<input onkeyup="value=value.replace(/\\/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/\\/g,''))" /> ExtJs window如何动态添加GridPanel 在线急等 jquery高手请指教 中断函数 onmouseover怎么向onmouseout中传递变量? 如何在js函数内部得到本函数的名字 怎么用javascript动态控制frameset宽度???急!!! javascript事件问题? 用css控制的下拉框中文本过长无法显示完全的问题? 在ScriptLet中,怎么自定义事件,并供调用者调用? 启动tomcat后,在浏览器上输入http://localhost:8080/h2.js显示的是h2里面的文本内容 请教,网站做手机版页面适配时,可以用JQ吗? jquery ajax 乱码问题
<html>
<head>
<script type="text/javascript">
function test(obj){
if(event.keyCode==220){
obj.value = obj.value.substring(0,obj.value.length -1);
}
}
</script>
<title>test</title>
</head>
<body>
<input id="abc" onkeyup ="test(this);">
</body>
</html>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript">
function test(e) {
if (e.keyCode == 220) {
e.preventDefault ? e.preventDefault() : e.returnValue = false;
alert("OK");
}
}
</script>
<title>test</title>
</head>
<body>
<input id="abc" onkeydown="test();">
</body>
</html>Chrome浏览器下无反应。
<input id="abc" onkeydown="test(event);">
<html>
<head>
<script type="text/javascript">
function test(obj){
if(event.keyCode==220){
obj.value = obj.value.substring(0,obj.value.length -1);
}
}
</script>
<title>test</title>
</head>
<body>
<input id="abc" onkeyup ="test(this);">
</body>
</html>
如果用onkeydown的话输入框里面还是会有\斜杠,那如果用onkeydown能否做到按下后输入框没有\斜杠么
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript">
function test(e) {
if (e.keyCode == 220) {
e.preventDefault ? e.preventDefault() : e.returnValue = false;
alert("OK");
}
}
</script>
<title>test</title>
</head>
<body>
<input id="abc" onkeydown="test(event);">
</body>
</html>
你的这个方法输入框里面还是会有斜杠。
alert语句去除确实可以,不过如果我下面还要执行其他代码呢 会影响嘛。 if (e.keyCode == 220) {
e.preventDefault ? e.preventDefault() : e.returnValue = false;
...
...
...
}
<html>
<head>
<title>test</title>
<script type="text/javascript">
function test(ev){
ev = ev || window.event;
var _key = ev.keyCode || ev.which;
//需要注意的是:onkeydown与onkeypress获取的keyCode是不同的
if(_key == 92){
alert("触发\斜杠键");
ev.preventDefault ? ev.preventDefault() : (ev.returnValue = false);
}
}
</script>
</head>
<body>
<input type="text" id="abc" onkeypress="test(event);"/>
</body>
</html>
不会影响他们的代码,alert会挂起代码执行,导致preventDefault执行失败什么的
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<script type="text/javascript">
function test(obj,e){
if(e.keyCode==220){
if (typeof window.addEventListener != 'undefined') {
obj.addEventListener('keyup',function(){obj.value = obj.value.substring(0,obj.value.length -1);});
} else {
obj.attachEvent('keyup',function(){obj.value = obj.value.substring(0,obj.value.length -1);});
}
}
}
</script>
<title>test</title>
</head>
<body>
<input id="abc" onkeydown ="test(this,event);">
</body>
</html>