Ограничьте количество строк в данных JSON при поиске в реальном времени, используя $ .each. - PullRequest
0 голосов
/ 29 апреля 2019

Я пытаюсь ограничить количество строк, которые я получаю в данных JSON при поиске в реальном времени через URL. Я пытался не считать ни одной строки таблицы и возвращал false, но это не работает, есть ли способ сделать это.

$(document).ready(function() {
      $.ajaxSetup({
        cache: true
      });
      $('#search').keyup(function() {
        $('#result').html('');
        $('#state').val('');
        var searchField = $('#search').val();
        var expression = new RegExp(searchField, "i");
        $.getJSON('https://vast-shore-74260.herokuapp.com/banks? 
          city = MUMBAI ', function(data) {
          $.each(data, function(key, value) {
              var count = 0;

              if ((value.city.search(expression) != -1 ||
                  value.branch.search(expression) != -1) && count < 10) {
                $('#result').append('<tr><th>' + value.bank_name + '</th>' +
                  '<th>' + value.address + '</th>' +
                  '<th>' + value.ifsc + '</th>' +
                  '<th>' + value.branch + '</th>' +
                  '<th>' + value.bank_id + '</th></tr>'
                  count++;
                }
                else {
                  return false;
                }
              });
          });
      });

1 Ответ

0 голосов
/ 29 апреля 2019

Попробуйте это - хотя бы переместите счетчик = 0 за пределы цикла

$(document).ready(function() {
  $.ajaxSetup({
    cache: true
  });
  $('#search').keyup(function() {
    $('#result').html('');
    $('#state').val('');
    var searchField = $('#search').val();
    var expression = new RegExp(searchField, "i");
    $.getJSON('https://vast-shore-74260.herokuapp.com/banks?city=MUMBAI', function(data) {
      var count = 0;
      $.each(data, function(key, value) {
        if (count >= 10) return false;
        if (value.bank_name.search(expression) != -1) {
          $('#result').append('<tr><th>' + value.bank_name + '</th>' + '<th>' + value.bank_id + '</th></tr>');
          count++;
        }
      });
    });
  });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...