angularjs-从控制器设置默认多选下拉值

m2xkgtsf  于 2021-09-29  发布在  Java
关注(0)|答案(1)|浏览(208)

我正在使用angularjs multi-select下拉代码,源代码如下:multiselectdropdown
我在同一个html页面中使用了两次相同的下拉列表。我想将第一个多选下拉列表的默认选定下拉列表名称显示为“项目”,第二个显示为“环境”。
multiselect.js文件中的代码使用指令和 scope.header 默认设置为“选择”,我想在html页面中将默认名称“选择”更改为“项目”和“环境”。
我需要您的帮助来更新它,或者在html页面中使用multiselect语法,或者从控制器传递scope.header值。

42fyovps

42fyovps1#

概述

字符串值“select”硬编码到指令中。您需要修改代码以使其成为动态的。

代码

这是我如何改变的。
https://plnkr.co/edit/j4cbblcfddcrve6k?preview

index.html

我添加了标题属性和我希望它显示的文本。

第17-24行

<multiselect class="input-xlarge" multiple="true"
        ng-model="selectedCar"
        header="Cars"
        options="c.name for c in cars"
        change="selected()" ></multiselect>
        <div class="well well-small">
            {{selectedCar}}
        </div>

multiselect.js

我将scope.header设置为属性,如果没有给出任何内容,则默认为“选择”。

第45行

scope.header = attrs.header || 'Select';

第119行

if (!modelCtrl.$modelValue || !modelCtrl.$modelValue.length) return scope.header = attrs.header || 'Select';

相关问题