AngularJS Dropdown需要验证

时间:2013-03-12 11:37:03

标签: javascript asp.net angularjs angularjs-validation

以下是我的代码段。我想用angular来验证我的下拉列表。

<td align="left" width="52%"> 
  <span class="requiredSmall">*</span> 
    <select class="Sitedropdown" style="width: 220px;" 
            ng-model="selectedSpecimen().serviceID" 
            ng-options="service.ServiceID as service.ServiceName for service in services"> 
         <option value="" ng-selected="selected">Select Service</option> 
   </select> 
</td>

有效意味着:

有效值可以是“选择服务”,它是我的默认值。像其他ASP.net需要字段验证器DefaultValue =“0”一样下拉,所以这里我的下拉列表将从服务绑定,我想选择除“选择服务”之外的所有其他值。

1 个答案:

答案 0 :(得分:117)

您需要在下拉列表中添加“名称”属性,然后需要添加required属性,然后使用myForm.[input name].$error.required引用错误:

HTML:

<form name="myForm" ng-controller="Ctrl">

  <select name="service_id" class="Sitedropdown" style="width: 220px;"          
          ng-model="ServiceID" 
          ng-options="service.ServiceID as service.ServiceName for service in services"
          required> 
    <option value="">Select Service</option> 
  </select> 
  <span ng-show="myForm.service_id.$error.required">Select service</span>

</form>

控制器:

function Ctrl($scope) {
  $scope.services = [
    {ServiceID: 1, ServiceName: 'Service1'},
    {ServiceID: 2, ServiceName: 'Service2'},
    {ServiceID: 3, ServiceName: 'Service3'}
  ];
}

这是一个有效的plunker