Ich habe eine einfache Array mit niederländischen Namen:Suchen im Array, nicht nur eindeutige Werte
var cities = ['Amsterdam', 'Den Haag', 'Den Helder', 'Rotterdam', 'Utrecht', 'Groningen', 'Zoetermeer', 'Zwolle', 'Delft'];
Mein Code durch dieses Array suchen wie folgt aussieht:
elems.searchField.on('keyup', function(e) {
var index, city, result;
var currentCity = elems.searchField.val().toLowerCase();
for (index = 0; index < cities.length; ++index) {
city = cities[index].toLowerCase();
if (city.indexOf(currentCity) > -1) {
result = city;
console.log(result);
break;
}
}
});
elems.optionsButton.on('click', function(e) {
if (optionButtonState === 0) {
elems.consoleItemSecondAndThird.css('display', 'flex');
optionButtonState = 1;
} else {
elems.consoleItemSecondAndThird.hide();
optionButtonState = 0;
}
});
Sie zwei sehen können Städte, die mit "Den" beginnen, das sind "Den Haag" und "De Helder". Wenn ich "Den" eintippe, muss ich beide aufgelistet sehen, aber mein Code sucht nur nach eindeutigen Werten und zeigt nur "Den Haag", wenn beispielsweise "Den" eingefügt wird. Wie kann ich alle Werte anzeigen lassen, die die Suchanfrage enthalten?
Sie erhalten nur ein Ergebnis, weil Ihre Variable 'result' nur eine Stadt ergibt. Sie können es stattdessen als Array verwenden und die for-Schleife fortsetzen. wie 'result.push (Stadt); fortfahren; ' – getjackx