我有文本框,使用我的JQuery文件中的以下代码在按钮点击事件上设置为必填字段
> document.getElementById("txtboxID").required = true;
> $scope.txtboxID = '';
> $scope.FormName.txtboxID.$setValidity("required", false);
文本框HTML代码
<div class="col-sm-8" ng-class="{ 'has-error' : FormName.@txtboxID.$invalid }">
<input type="text" id="txtboxID" name="txtboxID" class="form-control" ng-model="txtboxID" >
<p ng-show="FormName.txtboxID.$error.required" class="help-block col-xs-12 col-sm-reset inline">Text box is required</p>
</div>
但是在我输入textBox类名
之后&n- ng-invalid-required ng-invalid&#39;
没有变化。请参阅下面的快照。
答案 0 :(得分:1)
正如the documentation所说,您需要使用Angular的ng-required
指令才能正确使用该属性。它允许您根据布尔$scope
变量有条件地设置字段的要求。
示例:
<input type="text" id="txtboxID" name="txtboxID" class="form-control" ng-model="txtboxID" ng-required="txtboxRequired">
txtboxRequired
是Angular控制器范围内的变量,可自行决定是否打开和关闭。我强烈建议确保切换此函数的函数是$scope
变量中的函数,并且只能使用ng-click
(或控制器中的其他内容)调用它。
通常,您不应该尝试在Angular应用程序中操作DOM。