Forms Angularjs表单验证输入字段,不带名称
如何在表单中跟踪输入字段验证,而不使用字段名或字段名作为数组,例如用户[用户名] 示例代码:Forms Angularjs表单验证输入字段,不带名称,forms,angularjs,validation,Forms,Angularjs,Validation,如何在表单中跟踪输入字段验证,而不使用字段名或字段名作为数组,例如用户[用户名] 示例代码: <div ng-class="{ 'has-error' : saveUserForm.user[first_name].$invalid && !saveUserForm.user[first_name].$pristine }"> <input type="text" value="{{userAttr.first_name}}" required ng-mo
<div ng-class="{ 'has-error' : saveUserForm.user[first_name].$invalid && !saveUserForm.user[first_name].$pristine }">
<input type="text" value="{{userAttr.first_name}}" required ng-model="userAttr.first_name" name="user[first_name]" id="inputFirstName">
</div>
在表单字段中使用数组名“user[first_name]”不起作用,我无法将其更改为像“firstName”这样的简单名称
我是否可以在此处使用字段“inputFirstName”的id:saveUserForm.inputFirstName.$invalid?名称属性是必需的*,但Angular没有透露名称。如果名称是
user[first\u name]
,只要引用正确即可
假设名称如下:name=“user[名字]”
您应该这样引用它:
saveUserForm['user[first\u name]].$…
例如
另请参见此
一点解释:
在JavaScript
saveUserForm.user[名字]
相当于a[b]
其中a=saveUserForm.user
和b=名字
*:您可以不使用任何名称,通过创建自定义指令,获得父窗体的
FormController
,并使用其方法添加元素,但实际上不需要这样做。
顺便说一句,这是ng车型。但我不想跟踪它的值,我需要跟踪该字段是否有效,以便我可以向该字段添加错误类,例如ng class=“{error:userForm.userName.$invalid}”显示一些您正在尝试的代码。@Chandermani请参考上面更新的代码示例。名称是必需的,因为它用于创建ngModelController。我也不认为你可以用这个名字来表达。是否有任何方法可以在不使用name属性的情况下验证表单。我不知道,如果我添加name=“objectvo.fieldname”,默认情况下我得到的是[object object]。我已经在回答中回答了您的问题:)如果您面临任何具体问题,请发布一个问题。
<div ng-class="{'has-error':saveUserForm['user[first_name]'].$invalid&&
!saveUserForm['user[first_name]'].$pristine}">