【问题标题】:Validation on text on alphabets enter验证字母上的文本输入
【发布时间】:2014-12-03 03:26:49
【问题描述】:

任何人都在 TextBox 上使用 AngulerJS 验证。所以只能输入字母。

【问题讨论】:

    标签: angularjs angularjs-validation


    【解决方案1】:

    取决于你想要什么:

    字母和空格:

    ng-pattern="/^[a-zA-Z\s]*$/"
    

    字母没有空格:

    ng-pattern="/^[a-zA-Z]*$/"
    

    【讨论】:

      【解决方案2】:

      我猜所有其他使用 ng-pattern 的答案都是正确的,但要提一下,ng-model 的使用对于 ng-pattern 是强制性的。

      完整的输入可以是:

       <input type="text" ng-pattern ="/^[a-zA-Z\s]*$/" ng-model="Name" />
      

      这将只接受字母和空格。

      【讨论】:

      • 我想要元音中的重音符号(即 áÁéÉíÍóÓúÚ)。我该怎么做? @Prateek
      • [更新] 这个正则表达式为我工作:/^[a-zA-ZáéíóúÁÉÍÓÚ\s]*$/
      【解决方案3】:

      将此添加到您的输入中

      ng-pattern="/^[a-zA-Z]$/"
      

      【讨论】:

        【解决方案4】:

        如果您出于某种原因不想使用 ng-pattern,您还可以将验证函数添加到设置在您的文本框上的 ng-modal-controller,特别是添加到格式化程序和解析器数组。如何做到这一点的一个很好的描述在这里:http://www.benlesh.com/2012/12/angular-js-custom-validation-via.html。另一种选择是使用已发布的指令来实现相同的目的,我自己没有使用过这个指令,但它似乎是合法的:http://www.brentmckendrick.com/code/xtform/

        【讨论】:

          【解决方案5】:

          有一个名为ng-pattern 的指令允许使用正则表达式来指示哪些是允许的值。

          可以这样使用:

          <input ng-pattern="/[a-zA-Z]/" ...
          

          【讨论】:

            猜你喜欢
            • 2015-03-19
            • 1970-01-01
            • 2015-06-19
            • 1970-01-01
            • 1970-01-01
            • 2013-11-07
            • 1970-01-01
            • 1970-01-01
            • 2015-10-02
            相关资源
            最近更新 更多