相关疑难解决方法(0)

为什么AngularJS在select中包含一个空选项?

我在过去几周一直在使用AngularJS,而真正困扰我的一件事是,即使在尝试了所有排列或http://docs.angularjs.org/api/ng规范中定义的配置之后.directive:select,我仍然得到一个空选项作为select元素的第一个子元素.

这是玉:

select.span9(ng-model='form.type', required, ng-options='option.value as option.name for option in typeOptions');
Run Code Online (Sandbox Code Playgroud)

在这里控制器:

$scope.typeOptions = [
    { name: 'Feature', value: 'feature' },
    { name: 'Bug', value: 'bug' },
    { name: 'Enhancement', value: 'enhancement' }
];
Run Code Online (Sandbox Code Playgroud)

最后,这是生成的HTML:

<select ng-model="form.type" required="required" ng-options="option.value as option.name for option in typeOptions" class="span9 ng-pristine ng-invalid ng-invalid-required">
    <option value="?" selected="selected"></option>
    <option value="0">Feature</option>
    <option value="1">Bug</option>
    <option value="2">Enhancement</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我需要做些什么才能摆脱它?

PS:事情也没有这个,但如果你使用select2而没有多重选择,它看起来很奇怪.

angularjs

644
推荐指数
9
解决办法
40万
查看次数

带禁用行的ng-options

是否可以使用ng-options它根据标准呈现为禁用的行?

这个:

 <select ng-options="c.name group by c.shade for c in colors">
Run Code Online (Sandbox Code Playgroud)

也许有可能变成这样的事情:

 <select ng-options="c.name group by c.shade for c in colors | disabled(c.shade)">
Run Code Online (Sandbox Code Playgroud)

让我们说通过一个过滤器可以返回disabled='disabled'所有颜色有阴影="黑暗"

<select>
   <optgroup label="dark">
      <option value="0" disabled="disabled">black</option>
      <option value="2" disabled="disabled">red</option>
      <option value="3" disabled="disabled">blue</option>
   </optgroup>
   <optgroup label="light">
      <option value="1">white</option>
      <option value="4">yellow</option>
   </optgroup>
 </select>
Run Code Online (Sandbox Code Playgroud)

angularjs ng-options

54
推荐指数
6
解决办法
7万
查看次数

ng-repeat和ng-options之间有什么区别?为什么它们的行为方式不一样?

怎么做ng-optionsng-repeat不同?

在下面的代码中,我有一个ng-repeat迭代人员列表:

 <select ng-model="selectedPerson" >
          <option ng-repeat="obj in people" value="{{obj.id}}">{{obj.name}}</option>
  </select>
Run Code Online (Sandbox Code Playgroud)

以下是我认为使用中的等效选择框ng-options:

 <select ng-model="selectedPerson" ng-options='obj.name for obj in people'></select>
Run Code Online (Sandbox Code Playgroud)

我希望他们表现得一样,但事实并非如此.为什么?

$scope.people = [
        {
            id: 0,
            name: 'Leon',
            music: [
                'Rock',
                'Metal',
                'Dubstep',
                'Electro'
            ]
        },
Run Code Online (Sandbox Code Playgroud)

angularjs

25
推荐指数
2
解决办法
2万
查看次数

标签 统计

angularjs ×3

ng-options ×1