【问题标题】:display key value of the object in ui-select在ui-select中显示对象的键值
【发布时间】:2015-07-14 20:06:41
【问题描述】:

我正在使用ui-select 填充一些数据作为选择,数据存储在对象数组“pageArray”中,对象如下所示

{
    pageName: pageNameArray
}

例子,

[{"alpha": [1,2,3,4]}, {"beta":[3,4,5,6,7]}, {"gamma": [6,4,2,0]}, ....]

现在在 ui-select 中,我想将选项显示为“alpha”、“beta”、“gamma”……基本上是键值,我该怎么做?

我现在使用的ui-select代码是这样的

<ui-select ng-model = "page1.selected" style="width: 200px;" on-select = "getHost1List()">
    <ui-select-match placeholder = "Choose a page">{{$select.selected.name}}</ui-select-match>
    <ui-select-choices repeat = "page in pageArray | filter: {name: $select.search}">
        <span ng-bind-html = "page.name | highlight: $select.search"></span>
    </ui-select-choices>
</ui-select>

或者有更好的方法吗?

基本上在 ui-select 中,我想将选项设置为 ["alpha", "beta", "gamma", ....]。当我们选择一个特定的名称时,应该选择对应的对象,例如如果我们在列表中选择“alpha”,那么

page1.selected = { {"alpha": [1,2,3,4]} }

【问题讨论】:

  • 你能解释一下吗
  • 我根据要求编辑了问题...
  • 我不知道 ui-select。但是你对 ng-select 有一些了解吗?我想这可能对你有帮助
  • 我不知道,我看看吧

标签: angularjs angular-ui ui-select


【解决方案1】:

你可以这样做,把你的对象格式改成这个

{
    "name": pageName,
    "data": pageNameArray
}

在 ui-select 中,您可以只查询“name”作为选项(假设数组的名称是“arr”

<ui-select ng-model = "page1.selected" style="width: 200px;" on-select = "getHost1List()">
    <ui-select-match placeholder = "Choose a page">{{$select.selected.name}}</ui-select-match>
    <ui-select-choices repeat = "page in array | filter: {name: $select.search}">
        <span ng-bind-html = "page.name | highlight: $select.search"></span>
    </ui-select-choices>
</ui-select>

当一个选项被选中时,对象被选中,所以你甚至可以访问被选中对象的“数据”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 1970-01-01
    • 2021-09-25
    • 2021-11-10
    • 2020-08-29
    • 1970-01-01
    • 2021-04-23
    相关资源
    最近更新 更多