如何找到我的文本框中的第一个字符索引

时间:2010-06-14 11:35:37

标签: c# asp.net javascript

我有一个文本框,我需要在文本框的开头只输入字母;没有整数,没有特殊字符......我该怎么办?

4 个答案:

答案 0 :(得分:4)

如果您正在使用此客户端,则可以通过以下方式使用asp:RegularExpressionValidator控件。

<asp:TextBox ID="inputBox" runat="server" /><br />
<asp:RegularExpressionValidator 
    runat="server" 
    ControlToValidate="inputBox" 
    ValidationExpression="^[a-zA-Z].*" 
    ErrorMessage="Input must start with a letter" />

服务器端,您只需使用char.IsLetter检查第一个字符即可。

bool isValid = char.IsLetter(inputBox.Text[0]);

答案 1 :(得分:1)

您可以使用TextBox.Validated事件并将内容与RegEx匹配 看看here

答案 2 :(得分:0)

使用javascript match()方法和以下正则表达式应该做的伎俩

^[a-zA-Z].*

以下是如何使用上面的正则表达式实现匹配方法的简短示例

<script type="text/javascript">
  function validate()
  {
      var textBoxToValidate = document.getElementById('Text1');
      if(textBoxToValidate.value.match('^[a-zA-Z].*'))
      {
          alert('Is valid');
      }  
      else
      {
          alert('Is invalid');
      }
  }
</script>

<input id="Text1" type="text" />
<input id="Button1" type="button" value="button" onclick="validate()" />

答案 3 :(得分:0)

在剧本中

function fnalpha() 
{ 
    if (event.keycode >= 65 && event.keycode <= 90 ||
        event.keycode >= 97 && event.keycode <= 122) event.returnValue = true;
    else event.returnValue = false; 
}

在文本框的来源中调用此方法onkeypress="return fnalpha()"

我试过这样......工作正常......