angular js input校验只能输入数字和字母 directive写法一则

js代码:.directive(‘validateNumberLetter‘, function () {  return {    require: ‘ngModel‘,    link:    function (scope, elm, attrs, ctrl) {      scope.$watch(attrs.ngModel, function(n){        if(!n) return;        var oldName = attrs.validateNumberLetter;        if(oldName !== n){          var reg=/[^A-Za-z0-9]/;          if (n.length) {            if(reg.test(n)){              // it is invalid, return undefined (no model update)              ctrl.$setValidity(‘validateNumberLetter‘, false);              return undefined;            }else{               // it is valid              ctrl.$setValidity(‘validateNumberLetter‘, true);              return n;            }          }        }      });    }  };})html代码:
<div class="form-group-right">  <input required validate-number-letter
    id="name"    name="name"    class="form-control verify-input"    type="text"    ng-model="volume.name"    ng-maxlength="255"    ng-disabled="context.mode === ‘extend‘ ||                 context.mode === ‘attach‘ ||                 context.mode === ‘detach‘"    placeholder="{% trans ‘enter a volume name‘ %}"/>  <p class="help-block alert-fixed alert-danger"    ng-show="form.name.$error.required && form.name.$dirty">    {% trans "A volume name is required." %}  </p>  <p class="help-block alert-fixed alert-danger"    ng-show="form.name.$error.maxlength && form.name.$dirty">    {% trans "Name length should be less than 255 chars." %}  </p>  <p class="help-block alert-fixed alert-danger"    ng-show="form.name.$error.validateNumberLetter && form.name.$dirty">    {% trans "should be letter" %}  </p></div>
时间: 2024-10-28 04:02:42

angular js input校验只能输入数字和字母 directive写法一则的相关文章

input输入框 只能输入数字 oninput = &quot;value=value.replace(/[^\d]/g,&#39;&#39;)&quot;

项目中因为利用 element-ui 和avue两个ui框架搭建的 1.利用element-ui自带的校验需要注意点 prop  :rules ref这三个属性 2.利用oninput时间进行校验  oninput = "value=value.replace(/[^\d]/g,'')"   写在html中Input 标签内可以 ,写在第三方ui框架也可以 如图 这是html中input标签中 input输入框 只能输入数字 oninput = "value=value.re

C# 使用js正则表达式,让文本框只能输入数字和字母,最大长度5位

使用js正则表达式,让文本框只能输入数字和字母,最大长度5位,只需要加个onkeyup事件,即可简单实现 <asp:TextBox ID="txtBegin" runat="server" size="5" maxlength="5" onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')"></asp:TextBox> C# 使用j

html input验证只能输入数字,不能输入其他

html input验证只能输入数字,不能输入其他 此方法为借鉴别人的,在此只做记录. <input type="text" onkeyup="if(!/^\d+$/.test(this.value)) tip.innerHTML='必须输入数字,且不能有空格.'; else tip.innerHTML='';" /><span id="tip"></span>

用Jquery控制文本框只能输入数字和字母

只为成功找方法,不为失败找借口! 用Jquery控制文本框只能输入数字和字母 在公司开发WinForm项目时,发现公司自主研发的textbox控件非常强大,可以实现"只能输入数字"."只能输入字母"和"只能输入数字和字母"的三种输入限制,这样就可以精确控制用户输入的内容范围,让"用户永远没有办法输入限定的内容范围之外的其他内容",也就是"用户即使想犯错误也没有机会",这种限制控件输入的方式给了我很大的启发,

js文本框只能输入数字,

1,文本框只能输入数字代码(小数点也不能输入) 复制代码代码示例: <input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')"> 2,只能输入数字,能输小数点. 复制代码代码示例: <input onkeyup="if(isNaN(value))execCommand('und

JQuery:在input中只能输入数字,并且不能复制粘贴,不能切换输入法(转自纯粹的郭子)

CODE(text in IE6,IE9, Mac,Google Crome): $(function(){                                            $("#<%=txtItem.ClientID %>").keydown(function(e){ // 注意此处不要用keypress方法,否则不能禁用 Ctrl+V 与 Ctrl+V,具体原因请自行查找keyPress与keyDown区分,十分重要,请细查 if ($.brow

【JS】input输入框只能输入数字

一.实现思路 input只能输入纯数字的思路其实很简单,监听输入框值的变化,每次输入检索输入框的值,将非数字的字段替换成空,再将此值赋予给输入框. 关键代码: \d:匹配数字 ^/d:全文匹配非数字 replace(/[^/d]/g,''):全文匹配非数字,并替换成空. 那我们的实现代码为: var input = document.querySelector("#demo"); input.oninput = function (){ input.value = input.valu

javascript判断input框只能输入数字的方法

javascript 只允许输入数字有很多方法,总结如下 1,只允许输入数字和小数点. <input onKeypress="return (/[\d.]/.test(String.fromCharCode(event.keyCode)))" style="ime-mode:Disabled"> 2,判断的更详细一些,甚至22..2这样不算数字也判断得出来 <script> <br>function check(){ <br

iOS 限制只能输入数字(字母)

#define NUMBERS @"0123456789" #define ENGLISH @"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefjhigklmnopqrstuvwxyz" - (BOOL)textField:(UITextField*)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString*)string { NSCharac