标签: ng-options

在ng-options中选择默认值

我有这个代码和信息:

$scope.options = [
  { id: 1, label: "My label" },
  { id: 2, label: "My label 2" }
];
$scope.selected = 2;

<select ng-options="opt.label for opt in options" ng-model="selected">
  <option value="">Select one</option>
</select>
Run Code Online (Sandbox Code Playgroud)

但是,选项创建如下:

<select ng-options="opt.label for opt in options" ng-model="selected">
  <option value="">Select one</option>
  <option value="0">My label</option>
  <option value="1">My label 2</option>
</select>
Run Code Online (Sandbox Code Playgroud)

如何将所选选项设置为我的标签2?我知道可以做到:

$scope.selected = $scope.options[1];
Run Code Online (Sandbox Code Playgroud)

但我的问题是选项是在一个指令中创建的,那时我不知道1)有多少个值$scope.options,也不知道2)数据库中所选选项的索引是什么.我唯一知道的是id(在对象中).

我的指令的html是这样的:

<select ng-switch-when="select" ng-model="form.model[element.model]" ng-options="{{element.rule}}"></select>
Run Code Online (Sandbox Code Playgroud)

在哪里element.rule:

rule: "role.role for role in element.options"
Run Code Online (Sandbox Code Playgroud)

并且element.options具有选项的数组,并且form.model[element.model]具有所选选项的id.

如何在数组中获取ID为X的元素的索引 …

javascript angularjs ng-options angular-ngmodel

0
推荐指数
1
解决办法
5697
查看次数

Angular ng-options不显示所有元素

我正在使用AngularJS在一些应用程序中工作,我正在使用该ng-options指令,但我有一个问题.当我选择"Provincia"时,"Cantón"选择仅显示数组中的最后一个元素.

谁知道问题是什么?

这是我的HTML代码:

<div class="form-group">
  <select class="form-control" ng-model="selected.provincia" ng-options="p.provincia for p in geografiaCR">
    <option value="" disabled selected hidden>Seleccione una provincia</option>
  </select>
</div>
<div class="form-group">
  <select class="form-control" ng-model="selected.nombre" ng-options="n.nombre for n in selected.provincia.cantones">
    <option value="" disabled selected hidden>Seleccione un cantón</option>
  </select>
</div>
Run Code Online (Sandbox Code Playgroud)

这是Angular代码:

$scope.selected = {};
$scope.geografiaCR = [
  {
    provincia: 'San José',
    cantones: [{nombre: 'San José',nombre: 'Escazú',nombre: 'Desamparados',nombre: 'Puriscal',nombre: 'Tarrazú',
                nombre: 'Aserrí',nombre: 'Mora',nombre: 'Goicochea',nombre: 'Santa Ana', nombre: 'Alajuelita',
                nombre: 'Acosta',nombre: 'Tibás',nombre: 'Moravia',nombre: 'Montes de …
Run Code Online (Sandbox Code Playgroud)

html json selected angularjs ng-options

0
推荐指数
1
解决办法
64
查看次数

Angular ng-options 如何绑定到一个属性,而不是整个对象?

我正在使用 ng-options 从对象数组中创建一个 Select 。这工作得很好,对于这个问题,对象的内容有点不重要,只要说它们有一个名称属性、一个值属性和一些其他属性就足够了。

下面是我用来创建 Select 的代码,到目前为止它工作得很好。

这是我的问题 - 选择一个选项时,绑定到NG模型的内容是“整个对象”(FL)。我想绑定到 ng-model 只是对象的“名称”(i.itemName)部分。

我想我可以通过事后返回来解决这个问题,当按下提交按钮时,我可以遍历所有数据,找到绑定对象,从中提取名称,然后更改它,使其不受名称绑定,但是......这相当草率,而不是真正应该如何处理。

有没有办法更改此代码,以便当我选择一个项目时, ng-model 绑定到i.itemName而不是fl

<select chosen
        id="{{fl.fldBasic.fldLabel}}"
        ng-model="fl.dataValue"
        ng-readonly="{{fl.fldBasic.attrReadOnly}}"
        title="{{fl.help}}"
        ng-required="{{fl.required}}"
        class="chosen-select"
        ng-options="i.itemName for i in fl.combo_ItemList.itemList track by i.itemValue"
        style="width: 100%;">
</select>
Run Code Online (Sandbox Code Playgroud)

angularjs ng-options

0
推荐指数
1
解决办法
1390
查看次数

父范围未从指令中使用 ng-change 进行选择更新

我看过几篇关于此的文章,但仍然无法弄清楚。

我无法从指令内更新父范围。我读过的文章说作用域值不应该是原始的,而应该是一个对象,但仍然无法弄清楚为什么这不起作用。

angular.module('moduleMihai').controller('someController',
    ['$scope', '$http', function ($scope, $http) {

            $scope.durations = [{
                field: 'yearly',
                title: 'Yearly'
            }, {
                field: 'monthly',
                title: 'Monthly'
            }, {
                field: 'weekly',
                title: 'Weekly'
            }];
            $scope.selectedDuration = $scope.durations[0];

            $scope.handleDurationSelection = function () {
                console.log($scope.selectedDuration.field + ' selected');
                $scope.someData.title[0] = "SOMETHING ELSE!!";
            };


            $scope.someData= {
                title: ['Value1', 'Value2', 'Value3'] };
}]);
Run Code Online (Sandbox Code Playgroud)

该指令中没有任何内容:

angular.module("awaCommon").directive("durationSelection", [
    function () {
        return { 
            scope: {}, // tried removing this as well as seen in some articles 
            restrict: "E",
            templateUrl: "duration-selection.html",
            link: …
Run Code Online (Sandbox Code Playgroud)

select scope parent angularjs ng-options

0
推荐指数
1
解决办法
2909
查看次数

ng-options中的值作为对象而不是字符串存储在ng-model中

我有一个"格式"对象,其中包含"datamapping"对象列表.我的datamapping对象包含这些字段(但我们只关注concatenation):

dataMapping.column = null;
dataMapping.datatype = null;
dataMapping.dataMapping = null;
dataMapping.mappingName = "Mapping " + (format.datamappings.length+1);
dataMapping.hasConcatenation = true;
dataMapping.concatenation = ["", ""];
Run Code Online (Sandbox Code Playgroud)

<div style="margin: 1px 0px" ng-repeat="mapping in format.datamappings track by $index"> <!-- using a class for css is not working (even if it has !important), dont know why-->
				<hr width="50" align="left">
				{{mapping.mappingName}}
				<div style="margin-left: 13px"> <!-- using a class for css is not working (even if it has !important), dont know why-->
					Column
					<input class="form-control inline …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs drop-down-menu ng-options angular-ngmodel

0
推荐指数
1
解决办法
1730
查看次数

预选选项形成ng-options列表

我正在尝试预选列表中由ng-options指令生成的项目.有人可以告诉我发生在plunker中的事情吗?

http://plnkr.co/edit/GTnR76HEnB5NxQRe484m?p=preview

<head>
  <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js"></script>
  <script>
    function MyCntrl($scope) {
      $scope.prop = {
        "type": "select",
        "name": "Service",
        "values": [{
          'name': "Service 1"
        }, {
          'name': "Service 2"
        }, {
          'name': "Service 3"
        }, {
          'name': "Service 4"
        }]
      };
      $scope.selected1 = $scope.prop.values[1]
      $scope.selected2 = {
        "name": "Service 2"
      }

    }
  </script>
</head>

<body>

  <div ng-controller="MyCntrl">
    Works <br>
  <select ng-model="selected1" ng-options="v.name for v in prop.values">
    </select> {{selected1}} <br>
    Does not work. Why? <br>
    <select ng-model="selected2" ng-options="v.name  for v in prop.values">
    </select>
    {{selected2}} …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs drop-down-menu ng-options

-1
推荐指数
1
解决办法
6157
查看次数

replaceAll不能正常使用字符串

我得到了意外的结果......

 String s1 = "all"; 
 System.out.println(s1.replaceAll("$", "#"));
Run Code Online (Sandbox Code Playgroud)

即没有替换,如果没有$则无需替换,但为什么JVM添加'#'.o/p:所有#

java regex ng-options

-1
推荐指数
1
解决办法
50
查看次数