出身背景
我正在维护现有的AngularJS应用程序。
我有一个基于regex模式验证的文本字段。
<input type="text" class="validate" name="recipientContact" id="recipientContact" ng-model="orderdata.recipient_contact" ng-pattern="/[(]([0-9]{3})[)]\s([0-9]{3})[-]([0-9]{4})/g" required>
正则表达式验证本身正在工作。我确认当输入有效值时,$合法返回true,当输入无效值时返回false。
<p ng-bind="orderForm.recipientContact.$valid && ordersaveFlag"></p> //returns true for valid values, returns false for invalid values
问题
然而,问题是Angular正在添加“有效”类属性值,即使输入了无效值。
这不会影响功能(输入无效值时表单停止),但会影响样式(输入元素边框颜色变为绿色而不是红色)。
当我对元素进行“检查”时,我确认“有效”类是动态添加的。为什么即使$有效为false,它也会添加“有效”类?Angular“知道”文本字段无效,它应该添加“无效”类,这样才能正确应用样式。
这是当输入无效值(包含所有动态添加的类属性值)时,检查在实时页面上显示的内容。它应该添加类属性值“无效”而不是“有效”。
<input type="text" class="validate ng-invalid ng-touched ng-dirty ng-valid-parse ng-valid-required ng-invalid-pattern valid" name="recipientContact" id="recipientContact" ng-model="orderdata.recipient_contact" ng-pattern="/[(]([0-9]{3})[)]\s([0-9]{3})[-]([0-9]{4})/g" required>
如何进一步调查此问题?谢谢
我能够用ng类条件解决问题。
<input type="text" ng-class="{'valid' : orderForm.recipientContact.$valid, 'invalid' : orderForm.recipientContact.$invalid}" name="recipientContact" id="recipientContact" ng-model="orderdata.recipient_contact" ng-pattern="/[(]([0-9]{3})[)]\s([0-9]{3})[-]([0-9]{4})/g" required>
这篇文章很有帮助:
AngularJS |使用ng类的条件类
我知道这在这个论坛上不是新问题,但我很困惑我该怎么做。 问题:我正在用spring mvc+Hibernate开发一个应用程序。对于服务器端验证,我在controller中使用@valid注释,在bean中使用@null和@notnull注释。 例如: 这个验证很好地进行,数据也保存在DB中。 但我想验证唯一约束,引用完整性和其他约束使用注释没有任何验证器类。 有可能吗?如果没有,那么什么是最好和
我正在编写一个小型库,旨在成为一个高级(简单易用)库,用于对使用WeasyPrint库生成的pdf进行数字签名(https://github.com/Kozea/WeasyPrint). 我已经让它为自签名证书工作,现在我正在从GlobalSignDSS API(https://www.globalsign.com/en/resources/apis/api-documentation/digit
我正在寻找表单验证的最有效方法,我想知道我目前的植入是否不仅是可能的,而且在动态缩放时是可持续的。看看吧: (警告:忽略愚蠢的HTML类名) 是否有一种方法可以在输入中将forEach空白字段添加到数组中的错误字符串?现在,它只在数组中抛出一个字符串,作为它命中的第一个空白字段。
问题内容: 我将这个JSON对象存储在纯文本文件中: 当我尝试用解码时,它返回NULL。为什么?该文件是可读的(我尝试了回显,但工作正常)。 我已经针对http://jsonlint.com/测试了JSON ,它是完全有效的。 怎么了 问题答案: 它可以是特殊字符的编码。您可以要求 json_last_error() 获得确切的信息。 更新:问题已解决,请查看问题中的“解决方案”段落。
问题内容: 我将这个JSON对象存储在纯文本文件中: 当我尝试使用解码时,它返回NULL。为什么?该文件是可读的(我尝试了回显,但工作正常)。 我已经针对http://jsonlint.com/测试了JSON ,它非常有效。 怎么了 在Google上寻找答案,我回到SO:调用webservice后json_decode返回NULL。我的JSON文件具有UTFBOM序列(一些不应包含的二进制字符),