有没有办法验证名称包含 objectVO 的
使用 AngularJS?textfield
。 fieldName
<form name="form" ng-submit="submitForm($event)" novalidate() >
<input type="text" name="OBJECTVO.FIELDNAME" ng-model="fieldName" required />
<span class="error" ng-show="form.OBJECTVO.FIELDNAME.$invalid" >
</form>
我正在使用值对象
模式,AngularJS仅理解输入字段的纯字符字段名称。
如何在 ng-show 中显示错误?
ng-show="form.OBJECTVO.FIELDNAME.$invalid" 不是有效的语句。正确的做法是什么?
我研究了很多,但没有找到任何有用的内容。请帮忙!
最佳答案
您需要使用“数组”表示法来访问对象的属性:
ng-show="form['OBJECT.FIELDNAME'].$invalid"
<小时/>
另请参阅此 short demo 。
<小时/> <小时/>在 JavaScript 中,obj.someProp
是 obj['someProp']
的简写(且等同于)。
当我们在“编译时”不知道名称,但我们在“运行时”知道它时(即我们知道将有一个变量保存我们所访问的属性的名称),这通常对于访问对象的属性很有用。想要访问):
function accessSomeProperty(object, propertyName) {
return object[propertyName];
}
例如
propName = 'test';
accessSomeProperty(obj, propName); // returns: obj[propName]
// === obj['test']
// === obj.test
// with the benefit that 'test'
// was specified dynamically
关于javascript - 是否可以使用 AngularJS 验证包含名称为 objectVO.fieldname 的文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24458943/