我有一个带有typescript(Controller As语法)的角度js(v1)应用程序。我的观点中有表格。我想知道如何以更好的角度验证表单值。
这是一个视图示例:
<form novalidate name="vm.cvForm" class="cv-validation">
<div class="row">
<div class="small-2 columns">
<input name="cvName" type="text" class="cv-resize-input" placeholder="_" ng-model="vm.formState.version" required/>
<div ng-show="vm.cvForm.$submitted || vm.cvForm.cvName.$touched">
<div ng-show="vm.cvForm.cvName.$error.required">Tell us your name.</div>
</div>
</div>
<div class="small-10 columns">
<select
name= "cvLang"
ng-model="vm.formState.languageList[$index]"
class="cv-resize-input select select-margin-left mouse-hover"
ng-repeat="tmpLang in vm.formState.languageList track by $index"
ng-options="lang as lang.name for lang in vm.langs track by lang.id"
required>
<option value="">{{"general.select" | translate}}</option>
</select>
<span ng-show="vm.cvForm.cvLang.$error.required">Select language.</span>
</div>
</div>
请注意,我没有输入提交,因为我的“接受按钮”是在更多地方使用的指令。
我在这里遇到的问题是“客户端”验证实际上已完成(消息显示在视图中),但无论如何数据都插入到我的持久层中。如何避免这种行为?
提前致谢!