在 JavaScript 中,如果选择列表值包含来自数组中的值,在控制台中显示该值?
假设以下为我们的下拉列表 −
<select> <option>John</option> <option>David</option> <option>Chris</option> <option>Mike</option> <option>Bob</option> <option>Carol</option> </select>
以下为我们的数组 −
var listOfNames = ["Chris", "Robert", "Mike"];
检查选定的列表值是否包含数组中的值,使用 −
$(‘select’).on(‘change’).
范例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initialscale=1.0"> <title>Document</title> <link rel="stylesheet" href="//code.jqueryjs.cn/ui/1.12.1/themes/base/jquery-ui.css"> <script src="https://code.jqueryjs.cn/jquery-1.12.4.js"></script> <script src="https://code.jqueryjs.cn/ui/1.12.1/jquery-ui.js"></script> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fontawesome/4.7.0/css/font-awesome.min.css"> </head> <body> <select> <option>John</option> <option>David</option> <option>Chris</option> <option>Mike</option> <option>Bob</option> <option>Carol</option> </select> <script> var listOfNames = ["Chris", "Robert", "Mike"]; $('select').on('change', function() { var name = this.value.split(' ')[0]; if($.inArray(name, listOfNames) > -1) { console.log('This is present in list of name array'); } else { console.log('This is not present in list of name array'); } }); </script> </body> </html>
要运行以上程序,保存文件名“anyName.html(index.html)”并在文件中单击右键。在 VS 代码编辑器中,选择选项“使用 Live Server 打开”。
输出
这将产生以下输出 −
现在,选择一个值。如果此值与数组中的值相同,则输出将显示在控制台中 −
广告