Javascript 仅阻止在from TEXT字段中输入空格
我有一个文本字段,用户必须在其中输入自己的姓名。我遇到的问题是阻止用户只进入空间。我希望用户能够使用空格,但前提是他们有其他字符(abc、abc、1-9等)。我怎样才能阻止他们只进入空间?这可以在键盘上或键盘上完成吗?试试下面的方法,它会在开始时限制空白Javascript 仅阻止在from TEXT字段中输入空格,javascript,html,Javascript,Html,我有一个文本字段,用户必须在其中输入自己的姓名。我遇到的问题是阻止用户只进入空间。我希望用户能够使用空格,但前提是他们有其他字符(abc、abc、1-9等)。我怎样才能阻止他们只进入空间?这可以在键盘上或键盘上完成吗?试试下面的方法,它会在开始时限制空白 $("#textareaid").on("keydown", function (e) { var len = $("#textareaid").val().length; if(len == 0) return e.
$("#textareaid").on("keydown", function (e) {
var len = $("#textareaid").val().length;
if(len == 0)
return e.which !== 32;
});
工作
更新
上面的方法有一些限制,即当用户在文本区域中输入一些字符,然后将光标移动到文本区域的第零个位置,然后尝试输入一个空格,然后它将允许。下面的解决方案也克服了这一问题
html
<textarea id="text1"></textarea>
以上代码的工作示例我希望我的代码对您有用。效果很好。谢谢。好的。很高兴帮助你
$("#text1").on("keydown", function (e) {
var len = $("#text1").val().length;
if(len == 0)
{
return e.which !== 32;
}
else
{
var pos=$("#text1").getCursorPosition();
if(pos==0)
{
return e.which !== 32;
}
}
});
$("#text1").on("keyup", function (e) {
var pos=$("#text1").getCursorPosition();
if(pos==0)
{
var values =$("#text1").val();
if(values.charAt(0)==' ')
{
values=values.trim();
$("#text1").val(values);
}
return e.which !== 32;
}
});
(function ($, undefined) {
$.fn.getCursorPosition = function() {
var el = $(this).get(0);
var pos = 0;
if('selectionStart' in el) {
pos = el.selectionStart;
} else if('selection' in document) {
el.focus();
var Sel = document.selection.createRange();
var SelLength = document.selection.createRange().text.length;
Sel.moveStart('character', -el.value.length);
pos = Sel.text.length - SelLength;
}
return pos;
}
})(jQuery);