使用AngularJS中包含括号的名称验证输入
我有一个表单输入,其名称包含括号,例如:使用AngularJS中包含括号的名称验证输入,angularjs,forms,validation,symfony,ng-class,Angularjs,Forms,Validation,Symfony,Ng Class,我有一个表单输入,其名称包含括号,例如: <form name="my_form"> <input type="text" name="my_form[email]" ng-model="email" ng-class="'mycssclass': my_form.my_form[email].$invalid"> </form> 因此,问题是Angular没有应用css类,因为我输入的名称(my_form[email]),是引用Angula
<form name="my_form">
<input type="text" name="my_form[email]" ng-model="email" ng-class="'mycssclass': my_form.my_form[email].$invalid">
</form>
因此,问题是Angular没有应用css类,因为我输入的名称(my_form[email]),是引用Angular中输入的正确符号
下面是一个例子:
您需要在输入中使用
ng model
属性。它用$scope
中的值绑定字段内容。您还需要将Javascript对象传递给ng class
指令。在您的示例中,它将是:
<form name="my_form">
<input type="text" ng-model="my_form.email" ng-class="{'mycssclass': my_form.email.$invalid}">
</form>
请毫不犹豫地查看和指令文档中的示例。用包含括号的名称引用输入的方法是使用括号表示法,如下所示:
my_form['my_form[email]'].$invalid
很抱歉,我没有在我的示例中添加ng模型指令,但我正在使用它,这不是问题所在。我的问题是包含大括号的输入名称。您能提供问题的plunkr吗?以下是您的plunkr的更正版本:。基本上,您需要将输入的名称更改为
email
,将error
类触发器更改为my_form.email.$invalid
。显然,如果我更改输入的名称,它应该可以工作。。。但就我而言,我无法更改输入的名称。