当前位置: 首页 > 知识库问答 >
问题:

无法在angularjs中加载下拉列表的ng-model

贡建修
2023-03-14

我有项目作为我的json对象,其中包含一些我想在下拉列表中显示的数据。
但它仍然将我的下拉列表显示为空白。
在这里,我使用的是ng-repeat。
我在这里列出了我的代码。
.HTML:

<div ng-controller="Ctrl">   
    <div ng-repeat="item in items">
        <select ng-model="item.shareToOption" ng-options="c.value for c in shareToOptions"></select>
    </div> 
<div>

JS:

var app = angular.module('app', []);

function Ctrl($scope) {
        $scope.items = [
            {
            "shareToOption" : {id:1,value:"AA1"}
            },
            {
            "shareToOption" : {id:2,value:"AA2"},
            },
            {
            "shareToOption" : {id:3,value:"AA3"},
            },
            {
            "shareToOption" : {id:4,value:"AA4"}
            }
        ];

        $scope.shareToOptions = [
            {id:1,value:"AA1"},
            {id:2,value:"AA2"},
            {id:3,value:"AA3"},
            {id:4,value:"AA4"},
            {id:4,value:"AA5"},
            {id:4,value:"AA6"},
            {id:4,value:"AA7"}
        ];
}

共有1个答案

谢叶五
2023-03-14

您应该对< code>ng-options使用新的< code>track by表达式。大概是这样的:

<div ng-controller="Ctrl">   
    <div ng-repeat="item in items">
        <select 
          ng-model="item.shareToOption" 
          ng-options="c.value for c in shareToOptions track by c.id"
        ></select>
    </div> 
<div>

确保您使用的是Angular 1.2。

 类似资料:
  • 我正在尝试自动选择硒离子中的下拉列表,但我无法使其正常工作。 基本上,我在菜单项上记录了一次单击,这会显示下拉菜单,但每当我在其中一个选项上使用单击命令时,它都会关闭菜单,而不会选择新选项。我也尝试了select命令,但我一直得到“指定元素不是select” 任何想法?

  • 问题内容: 我通过使用ng-option填充了一个下拉列表,该下拉列表已挂接到依次调用服务的控制器上。不幸的是,输入的数据是一团糟,我需要能够按字母顺序对其进行排序。 您认为类似的事情可以做到,但不幸的是,它并没有成功。我知道我可以使用辅助方法或类似方法通过javascript对其进行排序,但是我拒绝相信没有更干净的方法可以做到这一点,而且我不想使用辅助方法来夸大控制器。原则上,它是如此基本,所以

  • 有人能帮我找到这个的xpath吗?提前谢谢。 HTML如下所示: 鼠标悬停时属性的值正在更改,如下所示: 以下是选项的检查代码:

  • 我试图简单地点击下拉列表,在我输入单词前进后显示。但是我总是被抛出一个错误。线程“main”org.openqa.selenium.NoSuChelementException:没有这样的元素:无法找到元素:

  • 问题内容: 我正在使用ng-grid的新3.0版本 ui- grid在我的应用程序中创建网格。我想做的是使表中的可编辑单元格之一成为ng- options 下拉列表,其中填充了使用角度工厂检索到的数据。 我正在尝试通过使用ui-grid 的editableCellTemplate功能来做到这一点。 这是一些示例代码: HTML: 控制器: temp.html: 这是代码的小插曲。[ 注意: 这只是

  • 问题内容: 我有一些特定于视图的脚本。但是,当angularjs加载视图时,该脚本似乎没有执行。 Index.html Main.html- 在ng-view下加载 在此示例中,当页面加载时,我看到网站上印有一个基本的hello世界。但是,我没有弹出任何消息说“你好,约翰”。 知道为什么我无法加载特定于某个视图的脚本吗? 额外信息 app.js 控制器/main.js 问题答案: 这就是 jqLi