问题标签 [ng-options]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
28965 浏览

javascript - angularJS - 使用 ng-options 添加静态选项

我正在使用 ng-options 在我的 Angular 应用程序中打印表单的所有选项。我直接从我的数据库中获取值,它给了我一个国家列表:

在这里,当页面加载时,选择不显示任何内容,即没有占位符,而我想打印一个像“任何地方”这样的静态值,而不必将它添加到我的“国家”列表中。

我试过这个:

但它不工作

有谁知道如何解决这个问题?

谢谢

0 投票
2 回答
9769 浏览

javascript - AngularJs - ajax调用后ng-options不绑定

我尝试在 ajax 调用后更改 ng-options 的选定索引,但它不会改变。

这是我的 API 发送的数据。

怎么了?如何自动更改 ng-options 中的选择?

0 投票
1 回答
1342 浏览

angularjs - Angular 选择 ng-options 地狱

我正在努力理解ngOptions的文档

我有一个简单的数组:['code1' , 'code2']我只想迭代并构造选项值和标签,如下所示:

我的期望:

我试过的:

我得到什么:

看到值不是我想要的。我测试了文档的几乎所有可能的语法,但没有成功。

ps:我已经简化了代码,但是我使用 angular-translate 来翻译接收到的代码并将该翻译放在选项标签中。

JsFiddle:http: //jsfiddle.net/3ekAj/

0 投票
2 回答
1171 浏览

angularjs - 在具有重复值的对象上使用 ng-options - angularjs

JSBIN 示例

我正在为我使用一个对象ng-options

请注意,选项 1-3 具有相同的值1

将此select元素与ng-options指令一起使用

我无法选择选项 1 和 2。

更奇怪的是,使用键盘我可以选择选项 1 和 2,但是当用鼠标选择时,选择会自动跳转到选项 3(猜测这是因为它是最后一个带有 value 的选项1)。

我尝试了不同的ng-options表达方式,但似乎都不起作用

注意:k总是唯一的

0 投票
3 回答
6781 浏览

javascript - 带有密钥对对象数组的 ng-options

我有以下从第三方获得的数据:

数据的组织方式不是我会做的,但现在我需要将所有这些都放在带有 ng-options 的选择中,以便显示的值和选项都是国家/地区的全名

我已经尝试过ng-options="code as name for (code, name) in countries",但我得到一个对象作为我的选择值。

0 投票
1 回答
7193 浏览

angularjs - 使用 angularjs 中的选择框(选定的索引和默认选项)

我是角度的新手。我曾经有一个使用以下内容填充的选择框ng:repeat

它生成的 HTML 如下所示:

我有一个运行在ng-click

该函数的第二行获取了在属性{{$index}}中设置的值。ng:repeat value(因此,在这种情况下为 0 或 1。)

最近有人告诉我,您不应该使用它ng:repeat来填充选择框。你应该使用它ng-options。所以我将我的选择框更新为:

这是生成的 HTML:

本质上是一样的,尤其是期权价值。但是我现在在更改时遇到错误,说address is undefined. 因此,出于某种原因,$scope.address_dropdown[$scope.selectedAddress];即使无论代码如何生成,实际索引值都是相同的,也不再适用于在更改时获取下拉列表的选定索引值。

任何人都可以解释为什么会这样,以及如何获得填充的选择框的选定索引值ng-options?我是否还可以回答为什么我在第二组代码(下面重复)中设置的默认选定选项的文本最终显示为空白?

代码:添加新地址

渲染:

0 投票
3 回答
18660 浏览

angularjs - angularjs - 添加多个硬编码选项以使用 ng-options 选择框

我有一个填充有ng-options. 我知道您可以手动添加默认选项,如下所示:

有没有办法(角度)添加多个选项?客户端现在想要第一个默认选项说“从地址中选择”,并且在列表中的所有填充选项之后,上面显示的“添加新地址”选项是列表中的最后一个选项ng-options

(我知道我可以使用 jQuery 来添加该选项,但如果可能的话,我宁愿保持所有角度。)

0 投票
1 回答
203 浏览

angularjs - AngularJS - 将 ng-options 连接到属性中命名的对象

我正在研究表单生成器实现,我想让 ng-options 评估当前“字段”的属性并返回选择的“选项”,如 $scope.options 中列出的。

这意味着我可以在我的控制器中设置包含对象的“选项”,并让表单元素使用正确的对象来填充下拉列表。

我的表单是从关系数据库构建的,因此对目标对象进行硬编码无济于事(虽然它确实有效,但它只是不可扩展)

我一直在弄清楚如何让 ng-options 评估一个表达式,从而从变量跳转到对象名称。

也许有更好的方法可以完全做到这一点?

<select id="{{field.Name}}" ng-model="field.Value"ng-options="option.ID as option.Value for option in [SOMETHING THAT EVALUATES TO AN OBJECT NAMED IN THE BINDING PROPERTY]" ng-required="field.Required"></select>

我在这里有一个小提琴:JSFiddle

0 投票
1 回答
2775 浏览

javascript - 使用箭头键盘而不是鼠标时,ng-options 模型未更新

我创建了 js 小提琴:小提琴

我创建了一个包含一些 ng-options 的表单,当您使用按钮而不是鼠标时它会出现奇怪的行为(只需单击文本框并按“tab”,您可以使用箭头键选择它)。

Javascript:

当您在 First try 中选择第一个选项时,ng-model 不会更新。

出了什么问题,以及如何解决这个问题?

正如下面评论中提到的,要重现,请在文本字段中输入鼠标,将选项卡输入到组合框,然后尝试使用键盘选择第二个选项(Thriller)。这将在第一次尝试时失败,一旦选择了第三个或第一个选项,第二个选项也会被识别。

0 投票
1 回答
1028 浏览

javascript - 在 AngularJS 中使用 Promise 调用多个资源

我正在开发一个简单的 AngularJS 应用程序,它对用户进行身份验证并显示与用户关联的事务列表。此外,还有一个下拉菜单允许用户按年份过滤交易。组合框模型是我通过 AngularJS 资源从我的 API 中检索的值数组,但只有在我检索到当前用户之后。这是代码:

尽管我今天学习了 Promise,也许我误解了一些东西,但这段代码看起来很简单。

问题是,当我尝试分配currentYear的第一个元素时timefilters.years,分配失败,因为数组仍然是空的,即使它不应该是,因为我试图在.then函数中分配。结果是下拉列表中填充了年份,但没有选择年份。

我在这里误会了什么?

顺便说一句,资源调用返回预期的数据,所以这不是问题。

编辑:就在发布后,我将第一个返回语句更改then为:

现在它可以正常工作了。但我认为 $resource.get 是为了返回一个承诺。我真的很困惑。有人可以澄清一下吗?