我有一个文本框。
<input type="text" name="FirstName" value="Mickey">
我希望用户阻止输入空格或制表符或新行。允许字符之间的空格。我怎样才能做到这一点?有人可以给我一个工作演示吗? I have this now
答案 0 :(得分:1)
尝试这个,如果不是字符串的开头
,则允许使用空格window.onload = function () {
var inputEl = document.getElementById("nospace");
inputEl.addEventListener("keydown", function (e) {
if (e.keyCode == 32 && this.value.length==0) {
e.preventDefault();
}
});
}
http://jsfiddle.net/k6She/
答案 1 :(得分:1)
只需再添加一个条件,如
if (inputEl.value.length == 0) {
if (e.keyCode == 32) {
e.preventDefault();
}
}
仅供参考: 您无法在TextBox中添加新行,因此无需阻止 enter
键
window.onload = function () {
var inputEl = document.getElementById("nospace");
inputEl.addEventListener("keydown", function (e) {
if (inputEl.value.length == 0) {
if (e.keyCode == 32) {
e.preventDefault();
}
}
});
}
选中此JSFiddle
答案 2 :(得分:0)
试试这个
$(document).ready(function(){
$("#target").keypress(function(e) {
if(e.keyCode == 13 || e.keyCode==32)
return false;
});
});
答案 3 :(得分:0)
这里我正在检查空格键和制表符的键码。输入类型=“文本”中不允许使用新行。
window.onload = function () {
var inputEl = document.getElementById("nospace");
inputEl.addEventListener("keydown", function (e) {
if (e.keyCode == 32 || e.keyCode == 9) {
e.preventDefault();
}
});
}
编辑 :试试这个:Sample Code
$("#nospace").keydown(function (e) {
if (e.keyCode == 32 || e.keyCode==9) {
e.preventDefault();
}
});
答案 4 :(得分:0)
HTML
<input>
的Javascript
$("input").on("keydown", function (e) {
return e.which !== 32;
});
这将允许所有字母,字母,特殊字符,除了空格..
答案 5 :(得分:0)
小提琴:http://jsfiddle.net/Rs6Gx/
JS:
$(function(){
$("input").keyup(function(e){
$(this).val($(this).val().replace(/^\s/g, ""));
});
});