在select2文档中,第6章(数据源)>阿贾克斯,有这个说明:
仅对于远程数据源,Select2不会创建新数据源 元素,直到第一次选择该项目。这是 出于性能原因。一旦创建了它,它 即使稍后更改了选择,它仍将保留在DOM中。
我的数据是本地的,但我还是不想在用户输入内容之前创建它。 (由于<option>
s)的大小导致的IE性能问题。
<label for="birthCountry">Country of Birth</label>
<select [disabled]="!properties.get('birthCountry').enabled" [(ngModel)]="properties.get('birthCountry').value" id="birthCountry" name="birthCountry" class="select2 form-control">
<option *ngFor="let option of properties.get('birthCountry').options" value="{{option.id}}">{{option.text}}</option>
</select>
目前,let option of properties.get('birthCountry').options
包含国家/地区列表。我在页面加载时设置minimumInputLength: 2,
并不重要;当我加载页面时,所有选项都存在。
我希望在用户键入文本时动态加载和过滤选项,并在DOM未显示时从DOM中删除选项。我做不到......
请记住:我有大约70个字段,其中大约10个是select2,有些是常规选择框... Internet Explorer吓坏了!
谢谢!