Я использую jQuery и мне нужно отфильтровать некоторые данные. На каждом браузере мой код работает так, как я ожидаю. Однако на мобильных устройствах он все скрывает и не работает.
Что я делаю не так? Спасибо за вашу помощь:)
<form id="region-filter" method="post">
<label>
<span>Nach Region suchen:</span>
<input type="text">
</label>
</form>
<div class="gridWrapper">
<?php
$regions = rest_api_call('regions.json');
?>
<?php foreach($regions['message']['data'] as $region) : ?>
<?php //var_dump($region); ?>
<div class="grid grid-ms-1-2 grid-md-1-3 grid-xl-1-4">
<div class="region" data-id="<?php echo $region['id']; ?>">
<div class="check"></div>
<div class="city-wrapper" style="background-image: url('<?php echo $region['icon']['svg']; ?>');">
<div class="city-name">
<?php echo $region['name']; ?>
</div>
</div>
</div>
</div>
<?php endforeach; ?>
</div>
$('#region-filter input').on({
input: function() {
let val = $(this).val();
$('.regions .gridWrapper .grid').each(function() {
let name = $(this).find('.city-name').text();
let match = name.toLowerCase().indexOf(val);
if (match !== -1) {
$(this).show();
} else {
$(this).hide();
}
});
},
keypress: function(e) {
let keyCode = e.keyCode || e.which;
if (keyCode === 13) {
e.preventDefault();
return false;
}
}
});