Textbox不应该使用javascript在asp.net中允许空格

时间:2016-09-16 14:59:47

标签: javascript html asp.net .net

Textbox不应该允许其中的空格。我写了一个正在运行的java脚本。但是当连续按下空格键时它失败了。 请建议。 我使用的代码如下:

<script type="text/javascript" language="javascript">
function splitText() 
{
var fullNumber = $get('<%= tbFullNumber.TextBoxClientID %>').value;        
$get('<%= tbFullNumber.TextBoxClientID %>').value = fullNumber.replace(' ', '');
fullNumber = $get('<%= tbFullNumber.TextBoxClientID %>').value;
}

2 个答案:

答案 0 :(得分:0)

我重新设计脚本,以便在控件失去焦点时立即替换所有空格。在文本框旁边按下“空格将被移除”粗体标签,你就是金色的。

这样,输入的方式无关紧要(用户输入?他们是否复制粘贴?按下按钮吗?他们是否使用屏幕键盘?他们......)。

AFAIK附加了两个事件onfocusout(当控件即将失去焦点但尚未失去焦点时)和onblur(当控件失去焦点时)。你当然可以处理这两种情况。

更换字符串中的所有空格很简单:

theString = theStringreplace(/\s/ig,''); // '  b  l ah  ' = 'blah'

答案 1 :(得分:0)

你不需要做那么多代码来防止这种情况...看看这个fiddle ......做这样的事情......

HTML

<input type="text" onkeypress="handleSpace(event)"  />

的JavaScript

function handleSpace(event) 
{
  //handling ie and other browser keycode 
  var keyPressed= event.which || event.keyCode;

  //Handling whitespace
  //keycode of space is 32
  if(keyPressed==32)
  {
    event.preventDefault();
    event.stopPropagation();
  }
}