Javascript 当我的所有Ng有效时启用一个按钮 回答安全问题 请回答以下问题 *=必填字段 {{问题.问题} 必修的。 继续
ng表格的动态验证 按钮启用并不是验证所有三个必填字段,它的启用取决于最后一个文本区域的必填属性 错误的屏幕截图Javascript 当我的所有Ng有效时启用一个按钮 回答安全问题 请回答以下问题 *=必填字段 {{问题.问题} 必修的。 继续,javascript,angularjs,angularjs-ng-repeat,angularjs-ng-form,Javascript,Angularjs,Angularjs Ng Repeat,Angularjs Ng Form,ng表格的动态验证 按钮启用并不是验证所有三个必填字段,它的启用取决于最后一个文本区域的必填属性 错误的屏幕截图 让我们想象一下,如果您有类似于此表单的内容 <div ng-show="!login.SecQuestions && !login.ResetUser"> <h3>Answer security questions</h3> <ul>
让我们想象一下,如果您有类似于此表单的内容
<div ng-show="!login.SecQuestions && !login.ResetUser">
<h3>Answer security questions</h3>
<ul>
<li>
<label>Please answer the following question(s)</label>
</li>
</ul>
<ul>
<li>
*= required field
</li>
</ul>
<ul ng-repeat="Question in login.SecurityQuestions">
<li>
{{Question.Question}}
</li>
<li>
<ng-form name="SecQuestionForm" novalidate>
<textarea name="SecurityAnswer" ng-model="Question.Answer" type="text" required></textarea>
<span style="color:red" ng-if="SecQuestionForm.SecurityAnswer.$dirty" ng-show="SecQuestionForm.SecurityAnswer.$invalid">required.</span>
</ng-form>
</li>
</ul>
<ul>
<li>
<button class="primaryButton" ng-disabled="ResetNamePass.SecQuestionForm.$invalid" ng-click="Continue_2()">Continue</button>
</li>
</ul>
</div>
希望能有帮助
演示
覆盖的电子邮件:
此电子邮件格式无效
模型:{{myEmail}}
将您的ng表单放入一个表单中,然后添加外部表单有效性的条件on按钮
<form name="form" class="css-form" novalidate>
<div>
Overwritten Email:
<input type="email" ng-model="myEmail" overwrite-email name="overwrittenEmail" />
<span ng-show="form.overwrittenEmail.$error.email">This email format is invalid!</span><br>
Model: {{myEmail}}
</div>
</form>
-
{{问题.问题}
-
必修的。
-
继续
只有当所有嵌套的ng表单都有效时,外部表单才有效`
<form novalidate name='form1'>
<ul ng-repeat="Question in login.SecurityQuestions">
<li>
{{Question.Question}}
</li>
<li>
<ng-form name="SecQuestionForm" novalidate>
<textarea name="SecurityAnswer" ng-model="Question.Answer" type="text" required></textarea>
<span style="color:red" ng-if="SecQuestionForm.SecurityAnswer.$dirty" ng-show="SecQuestionForm.SecurityAnswer.$invalid">required.</span>
</ng-form>
</li>
</ul>
<ul>
<li>
<button class="primaryButton" ng-disabled="!form1.$valid" ng-click="Continue_2()">Continue</button>
</li>
</ul>
</form>
电子邮件
*无效的电子邮件地址
密码
*
{{buttonext}}
无效的电子邮件地址/密码。请重试。
`
AFAICS:在重复中应用formname,在每个条目上产生相同的formname(角度形式)。你有没有尝试过将表单设置在repeat之外?我尝试过将我的表单包装到另一个NG表单中,它起了作用。我认为将表单包装到simple中也会起作用。。所以不需要把它放在ng表格中。是的,我可以这样做,但是我的SPA有几个其他的分区,所以验证一个表格会激发所有d分区的必要性。因此ng表格是唯一的选择。
<form novalidate name='form1'>
<ul ng-repeat="Question in login.SecurityQuestions">
<li>
{{Question.Question}}
</li>
<li>
<ng-form name="SecQuestionForm" novalidate>
<textarea name="SecurityAnswer" ng-model="Question.Answer" type="text" required></textarea>
<span style="color:red" ng-if="SecQuestionForm.SecurityAnswer.$dirty" ng-show="SecQuestionForm.SecurityAnswer.$invalid">required.</span>
</ng-form>
</li>
</ul>
<ul>
<li>
<button class="primaryButton" ng-disabled="!form1.$valid" ng-click="Continue_2()">Continue</button>
</li>
</ul>
</form>
`<form name="frmsignIn" ng-submit="login()" novalidate >
<span class="glyphicon glyphicon-user" ></span>
<div>
<label for="email" >Email</label>
<input type="email" name="email" ng-model="userName" ng-required="true"/>
<span ng-show="frmsignIn.email.$dirty && frmsignIn.email.$error.required">*</span><span ng-show="frmsignIn.email.$dirty && frmsignIn.email.$error.email">Invalid email address</span>
</div>
<div>
<label for="password">Password</label>
<input type="password" name="password" ng-model="password" ng-required="true"/>
<span ng-show="frmsignIn.password.$dirty && frmsignIn.password.$error.required">*</span>
</div>
<div>
<button type="submit" ng-disabled="frmsignIn.$invalid" > {{buttonText}}</button>
</div>
<div>
<span ng-show="showErrorMsg">Invalid Email Address/Password.Please try again.</span>
</div>
</form>`