问题标签 [ui-select2]

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 投票
5 回答
2856 浏览

angularjs - 使用 Angular-UI Select2 元素进行 Angularjs E2E 测试

我有一个部分使用 Angular UI http://angular-ui.github.io/的 select2 元素

我遇到的问题是该元素是必需的,尽管我已通过以下代码成功设置了该字段,但未删除所需的属性,因为由于外部更改,Angular 的模型不能更新,我不知道如何要么提供一个 $scope.apply() 要么利用 Angular 的另一个函数来继续测试。

首先允许直接运行 jQuery 函数:(取自How to execute jQuery from Angular e2e test scope?

然后更改字段值:

请注意,并非所有这些功能都需要反映对 ui 的更改,只是我用来尝试使其正常工作的所有功能......

0 投票
1 回答
1576 浏览

jquery - 在 Angular js 中为 ui-select2 添加新选项

我在 angularjs 中使用 ui-select2,它使用 jquery 的 select2 插件。我有一些预定义的列表,然后当我开始搜索任何内容时,如果在列表中找不到,我想添加一个新值。我正在做这样的事情:

但是单击不起作用,并且永远不会打印 addCountry 中的控制台。知道如何在 Angular js 中为 ui-select2 添加新选项吗?

0 投票
2 回答
470 浏览

javascript - ui-select2 inside 指令没有更新控制器模型

我有一个指令,它接受一个集合并构建一个下拉列表。

这工作正常。它建立了下拉没有问题。当我更改下拉值时,第二个监视函数被调用,我可以看到它将集合选择的值设置为我想要的值。但是,我放入指令中的 collectionchoice 并没有绑定到新的选择。

那就是 HTML 标记。

这是javascript:

然后,当我发布我的新用户角色时,我将用户角色字段设置为:

但这仍然是第一项,即使我已经更新了下拉列表,根据手表功能,它已更改为正确的值。我在这里想念什么?

0 投票
1 回答
3709 浏览

javascript - 带有 AJAX 多选的 Angular ui-select2 - 将最终选择值检索为 ids 而不是 json

带有 AJAX 多选的 Angular ui-select2 - 将最终选择值检索为 ids 而不是 json

问题陈述

我想使用 ui 控件的 tokeninput/chosen/select2 样式来编辑模型中的 id 数组。该 id 数组是我正在为其构建编辑器/表单的较大模型中的一个属性的值。编辑完 ids 数组后,当我将模型提交到服务器时,我希望将该属性作为 ids 数组提交,而不是作为 json 对象数组提交。

当使用 Angular 的 ui-select2 组件时,我的属性的内容会被一个 json 对象数组替换。目前尚不清楚如何在编辑完成后撤消它。我以为我可能使用了错误的组件,但是在使用 angular 执行此类操作时,所有线程似乎都指向使用 ui-select2。

解释

数据模型以一个 'myProp' 属性开始,它是一个 id 数组:

ui-select2 指令将这些 id 替换为 json 对象。这是加载 ui-select2 后模型的示例。(此 plunker 中的现场演示:http://plnkr.co/edit/vEf1VwnRHNYdB9AuR9zO):

当我保存我的模型时,我希望将此属性作为 id 数组而不是 json 对象数组提交给服务器。所以基本上我想将数组扁平化为 ids 而不是 json 对象。select2 API 提供了一个val方法,可以返回这个 id 数组。我如何/应该在 Angular 的 ui-select2 组件的上下文中使用它?

警告:我在页面上为多个属性多次执行此操作,因此特定于属性的硬编码修复将不起作用。对于我使用 select2 编辑的任何属性,它必须是自动发生的

示例代码

(请参阅此 plunker 中的代码:http: //plnkr.co/edit/vEf1VwnRHNYdB9AuR9zO

0 投票
1 回答
1243 浏览

javascript - AngularJS,Select2 - 使用 ngDisabled 在下拉列表中绑定真/假值

我正在尝试执行以下操作:

  • 使用 Select2 显示一个简单的 Yes/No 下拉列表(值为 true 和 false 作为 ID)
  • 使用 ngModel 将下拉列表的值绑定到模型
  • 使用真/假值启用/禁用文本框

这是一个笨蛋

我有一个带有复选框的常规示例和一个 select2 示例。

不同之处在于我将 select2 下拉列表与一组值绑定。JSON 似乎反映了与真/假值相关的字符串数据类型,即它们被绑定为字符串“真”和“假”。

编辑:我意识到标签值只能是字符串。因此,请参阅我的答案。

0 投票
16 回答
426538 浏览

jquery - 如何使用 JqGrid 更改 select2 下拉列表的选定值?

我正在使用 Oleg 的select2 demo,但我想知道是否可以更改下拉菜单中当前选择的值。

例如,如果加载的四个值是:"Any", "Fruit", "Vegetable", "Meat"并且下拉列表默认为"Any",我将如何"Fruit"在 JqGrid 事件中将其更改为loadComplete

这可能吗?

0 投票
1 回答
1263 浏览

angularjs - Angularjs,带有动态标签的select2和onclick

我将 angularjs 与“ui_select2”指令一起使用。Select2 绘制带有格式化功能的新标签,有带有“ng-click”属性的“”元素。如何告诉 angularjs 新的 DOM 元素?否则新的“ng-clicks”将不起作用。

HTML:

JS(角度控制器):

问题是select2创建了angularjs尚未发现的DOM元素,我读到需要使用angularjs $compile函数将新的DOM元素附加到某个元素,但我不能在控制器中使用它。

0 投票
2 回答
2139 浏览

javascript - Angular 1.2 升级后的 Angular UI-Select 下拉值问题

我们刚刚将 Angular 从 1.2 RC 2 升级到 1.2 final 并将 select2.js 从 3.4.0 升级到 3.4.3.1。现在我注意到一些下拉菜单没有正确显示它们的值。

下拉值实际上是设置的,如果您打开下拉列表,您会看到它突出显示。如果最初设置了支持模型值,则它会正确显示。如果稍后设置,比如在 HTTP 调用返回或超时后,下拉列表不会呈现设置的值,即使使用 $scope.apply 也是如此。

我确实注意到 Angular UI 本身(包括 UI-select)在 Angular 1.2 下降后没有任何更新,这看起来很奇怪。

工作 Plunker:
http ://plnkr.co/edit/unQGrqUr7IJinDEioERf?p=preview

请注意,在 plunker 的 app.js 中,经过短暂的超时后,度类型 ID 值设置为 2,映射到“关联”。下拉列表仍然显示占位符文本而不是该值,但打开下拉列表确实选择了 Associates。

此功能在升级之前有效。我没有看到任何关于这方面的重大变化的突然变化,所以我假设这是需要在UI-select中解决的问题?或者,也许我们做错了我们之前刚刚逃脱的事情?

0 投票
1 回答
2740 浏览

angularjs-select2 - Select2 与 angularjs 并使用 ng-options 无法正确显示

选择代码:

产生的代码:(删除 ui-select2="{allowClear: true}")

结果:http: //i.imgur.com/iStWMMn.png

问题:如您所见,生成的代码选择了第三个选项,当我打开下拉菜单(图像)时,它也被选中,但是在关闭时(在第一次打开之前)它不显示所选选项。

它如何保持以及应该如何:http: //i.imgur.com/D5EchRr.png

所以...如果它被选中(在生成的 html 中)为什么它没有显示为好像它被选中了?

0 投票
0 回答
1911 浏览

angularjs - angularjs + ui-select2 模块未正确触发 initSelection

我正在尝试在启用多选的情况下实现 AngularJS + Select2。

当我包含完整的 angular-ui 包时,它可以工作,但是我不想使用完整版本。

所以,我尝试做同样的事情,但只包括 ui-select2 模块本身,我很惊讶 initSelection 不能以这种方式工作。

我准备了 2 个 Plunker 来说明这两种尝试,第一个不起作用,显示仅包含 ui-select2 模块,第二个示例有效,包括完整的 angular-ui 包。

1º 示例(不起作用) http://plnkr.co/edit/YOrzQKGx3py24Lf3JQ2Z?p=preview

2º 示例(作品) http://plnkr.co/edit/ZeYgJyLHo30hTi2DerJZ?p=preview

单击 select2 下方的“设置选定”按钮。

在处理了大约 12 个小时后,我陷入了困境。任何 angularjs+angular-ui 大师都知道这里发生了什么吗?

我只需要使用 ui-select2.js 来完成这项工作,所以我需要示例 1 工作。

有任何想法吗?

非常感谢。