Javascript 具有必需属性的角度包装uib下拉列表
我正在尝试为一个角度表单创建自定义验证,其中我使用了包装在自定义组件中的Javascript 具有必需属性的角度包装uib下拉列表,javascript,angularjs,angular-ui-bootstrap,Javascript,Angularjs,Angular Ui Bootstrap,我正在尝试为一个角度表单创建自定义验证,其中我使用了包装在自定义组件中的uib下拉列表。 有几种情况下,on dropdown会更改第二个下拉列表的内容。在某些情况下,第二个下拉列表没有选项,因此表单不能提交 <my-select options="$ctrl.formModel.myModel()" label-field="name" ng-model="$ctrl.formModel.mySelectedItem" ng-required> &l
uib下拉列表。
有几种情况下,on dropdown会更改第二个下拉列表的内容。在某些情况下,第二个下拉列表没有选项,因此表单不能提交
<my-select
options="$ctrl.formModel.myModel()"
label-field="name"
ng-model="$ctrl.formModel.mySelectedItem"
ng-required>
</my-select>
包装在myselect
中,这是一个自定义的uib下拉列表
实现(主要是添加类)
由于uib drodown
中有in-form元素,我无法以常规方式进行验证。
是否有方法通过模型的内容进行验证?
同样,该组件可能需要非ng
实现
谢谢 对于我的组件,我最终做了:
self.$onChange = () => {
if (_.isUndefined(self.model)) {
return self.ngModelCtrl.$setValidity('required', false);
} else {
return self.ngModelCtrl.$setValidity('required', true);
}
}
我需要将$setValidity
设置为required
,但出于验证目的,可以将其更改为任何内容
感谢@georgeawg为我指明了正确的方向 看,是的。。。我正在调查这件事。到目前为止,我可以看到它处理表单元素的自定义验证,而这里我没有这样的东西。应该是一样的吗?此外,示例使用指令而不是组件。当询问由代码引起的问题时,如果您提供人们可以用来重现问题的代码,您将得到更好的答案。这是一个简单的uib下拉实现。尽管如此,你的链接还是让我得到了一个正确的答案:)