#javascript #php #jquery #drop-down-menu
#javascript #php #jquery #выпадающее меню
Вопрос:
У меня есть код для зависимого выпадающего списка с автозаполнением. Я могу видеть значения в выпадающем списке по первым буквам, введенным при вводе. Как заставить его показывать, соответствует ли какая-либо буква, введенная во ввод, любым буквам значений в массиве, и выделить буквы, которые совпадают. Смотрите пример здесь, на Github.
var states = {
'Color': ['red', 'black', 'yellow', 'green', ],
'Numbers': ['one', 'two', 'three', 'four']
};
function initDialog() {
clearDialog();
var $locations = jQuery('#location');
jQuery(document).on("change", "#country", function() {
var country = $(this).val(),
lcns = states[country] || [];
var html = jQuery.map(lcns, function(lcn) {
return '<div>' lcn '</div>'
}).join('');
$locations.html(html)
if (jQuery('#country').val() == "color") {
function match(str) {
str = str.toLowerCase();
clearDialog();
for (var i = 0; i < states.color.length; i ) {
if (states.color[i].toLowerCase().startsWith(str)) {
jQuery('.dialog').append('<div>' states.color[i] '</div>');
}
}
}
var states = {
'Color': ['red', 'black', 'yellow', 'green', ],
'Numbers': ['one', 'two', 'three', 'four']
};
function initDialog() {
clearDialog();
var $locations = jQuery('#location');
jQuery(document).on("change", "#country", function() {
var country = $(this).val(),
lcns = states[country] || [];
var html = jQuery.map(lcns, function(lcn) {
return '<div>' lcn '</div>'
}).join('');
$locations.html(html)
if (jQuery('#country').val() == "color") {
function match(str) {
str = str.toLowerCase();
clearDialog();
for (var i = 0; i < states.color.length; i ) {
if (states.color[i].toLowerCase().startsWith(str)) {
jQuery('.dialog').append('<div>' states.color[i] '</div>');
}
}
}
Комментарии:
1. Опубликованный вами URL-адрес не существует.
2. Похоже, что в последней части вашего кода есть функция,
match
по некоторым причинам определенная вif()
блоке. Почему это так? Эта функция только что определена, в данном коде она в любом случае не выполняется.3. это только для зависимого выпадающего списка, код соответствия букв начинается с for()
4. Ваш код кажется очень неполным
5. используйте это в своем условии if в состояниях цикла for.color[i].toLowerCase().содержит(str.toLowerCase())