繁体   English   中英

如何使用不区分大小写的下拉选择

[英]How to use case insensitive dropdown selectize

我有一个下拉菜单,其中包含“儿科”之类的选项。 我的页面正在接收作为“儿科”(小写)的查询参数。

当我尝试将下拉菜单的选择设置为儿科时,什么也没有发生,因为下拉菜单没有儿科。

前任:

<div class="option" data-selectable="" data-value="Pediatrics">Pediatrics</div>

我正在尝试使用以下方法选择此选项:

let myParamS = "pediatrics";

$("#specialization").data('selectize').setValue(myParamS); 

=> 不起作用,因为我的下拉菜单有“P”ediatrics 而不是“p”ediatrics

有谁知道设置这个的最佳方法是什么?

您可以通过不区分大小写比较的选项循环,并找到要设置的正确选项值。

let myParamS = "pediatrics";

const selectizeInput = $("#specialization").data('selectize');
// returns a dictionary of options with value as a key
const options = selectizeInput.options; 

// does case insensitive comparision to find the matching option
const getValue = (options, valueToFind) => Object.keys(options)
.find(key => key.toLowerCase() === valueToFind.toLowerCase());

// set value
selectizeInput.setValue(getValue(options, myParamS));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM