Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何预选列表中ng选项的多行_Javascript_Html_Angularjs - Fatal编程技术网

Javascript 如何预选列表中ng选项的多行

Javascript 如何预选列表中ng选项的多行,javascript,html,angularjs,Javascript,Html,Angularjs,我有一个html列表: 基本上,我想做的是显示这个框,其中有一个列表,用户可以选择多个,然后我保存它。保存和检索工作。selectedList使用用户上次选择的项目填充,而fullList是整个选项列表。我希望在加载数据时能够突出显示这些选定选项行,就像从上一个状态恢复一样。我似乎无法让它突出显示/选择。。。我在网上搜索,没有找到任何与我所拥有的相似的东西。。。我们将非常感谢您的帮助!谢谢 因为您想从列表中选择多个项目,所以可能需要使用插件 或 或 要预先选择几个选项,只需将“选择”字段绑定到一

我有一个html列表:


基本上,我想做的是显示这个框,其中有一个列表,用户可以选择多个,然后我保存它。保存和检索工作。selectedList使用用户上次选择的项目填充,而fullList是整个选项列表。我希望在加载数据时能够突出显示这些选定选项行,就像从上一个状态恢复一样。我似乎无法让它突出显示/选择。。。我在网上搜索,没有找到任何与我所拥有的相似的东西。。。我们将非常感谢您的帮助!谢谢

因为您想从列表中选择多个项目,所以可能需要使用插件


要预先选择几个选项,只需将“选择”字段绑定到一个模型,并使用值初始化该模型。

如果您正在谈论使用ng模型和ng选项的默认浏览器multiselect,则可能只是犯了一个常见错误

默认multiselect的HTML:

<select multiple ng-model="selectedOptions" ng-options="option.value as option.label for option in optionList"></select>
选择选项:

当您将对象数组用于所选选项时,您的选择将不会在多选框中被选中,如下所示:

$scope.selectedOptions= [
            {'value':2, label :'Option 3'},
            {'value':5, label :'Option 6'}
];
为什么?? 因为option.value as引用的option.value值不是,例如,{'value':2,标签:'option 3'},而是2

您是否应该将option.value替换为option as并使用第二个selectedOptions列表,因为这样它将是,例如,{'value':2,标签:'option 3'}。这是行不通的

由于某些原因,multiselect无法处理ng模型中的对象数组,或者无法处理option.value中的对象,就像初始选择的ng选项中一样。。。为什么,我不确定

结论:

多选需要option.value引用 对所选选项使用简单数组,同时记住引用
希望这有帮助。

你能发布你的HTML吗?是否将模型附加到“选择”字段?没有这些插件我还能做什么?我能添加一些简单的东西来实现吗?@shaselai multi-select没有内置到Angular中。欢迎你自己写。要预先选择单个值,只需将其绑定到模型。
$scope.selectedOptions= [2,5];
$scope.selectedOptions= [
            {'value':2, label :'Option 3'},
            {'value':5, label :'Option 6'}
];