Как скрыть таблицу по номеру фильтра в контенте? - PullRequest
0 голосов
/ 28 мая 2020

У меня проблема с тем, чтобы скрыть таблицу, следуйте категориям / кабинам inet номера находятся в диапазоне 100-199 и диапазоне 400-499.

Ниже мой пример кодирования для описания, этот пример имеет 3 таблицы , как определить, если диапазон 100-199 и диапазон 400-499 в категории / кабине inet, а затем скрыть таблицу:

<table id="noshow">
  <tr>
    <th>Test 1</th>
    <th>Test 2</th>
  </tr>
  <tr>
    <td>Title</td>
    <td>ABC</td>
  </tr>
  <tr>
    <td>Reference No.</td>
    <td>123456</td>
  </tr>
  <tr>
    <td>Date</td>
    <td>28-05-2020</td>
  </tr>
  <tr>
    <td>Category/Cabinet</td>
    <td>187-1-PENTADBIRAN</td>
  </tr>
  <tr>
    <td>Subcategory/Folder</td>
    <td>187-1-1-PENTADBIRAN/PERUNDANGAN</td>
  </tr>
</table>
<br><br>

<table id="noshow">
  <tr>
    <th>Test 3</th>
    <th>Test 4</th>
  </tr>
  <tr>
    <td>Title</td>
    <td>DEF</td>
  </tr>
  <tr>
    <td>Reference No.</td>
    <td>123</td>
  </tr>
  <tr>
    <td>Date</td>
    <td>27-05-2020</td>
  </tr>
  <tr>
    <td>Category/Cabinet</td>
    <td>356-1-PENTADBIRAN</td>
  </tr>
  <tr>
    <td>Subcategory/Folder</td>
    <td>356-1-1-PENTADBIRAN/PERUNDANGAN</td>
  </tr>
</table>

<br><br>

<table id="noshow">
  <tr>
    <th>Test 5</th>
    <th>Test 6</th>
  </tr>
  <tr>
    <td>Title</td>
    <td>GHI</td>
  </tr>
  <tr>
    <td>Reference No.</td>
    <td>8888</td>
  </tr>
  <tr>
    <td>Date</td>
    <td>23-05-2020</td>
  </tr>
  <tr>
    <td>Category/Cabinet</td>
    <td>466-1-PENTADBIRAN</td>
  </tr>
  <tr>
    <td>Subcategory/Folder</td>
    <td>466-1-1-PENTADBIRAN/PERUNDANGAN</td>
  </tr>
</table>

Я использую ниже javascirpt для решения, но не могу скрыть таблица:

 $(document).ready(function(){
        $('#noshow').each(function(k,v){
             var number=$(v).text().split('-')[0];
            console.log(number,$(v).text());
            if((number >= 100 && number <= 199)||(number >= 400 && number <= 499)){
                console.log("remove");
               $(v).remove();
            }
        });
    });

Мои результаты, как показано на рисунке:

Output 1

В случае успеха остается только результат не диапазон 100-199 и диапазон 400-499, чтобы отобразить таблицу, как показано на рисунке:

Output 3

Если возможно, используйте javascript функция, чтобы скрыть данные? Надеюсь, кто-нибудь может подсказать мне, как скрыть таблицу в соответствии с категорией / кабиной inet номера в диапазоне 100-199 и диапазоне 400-499. Спасибо.

1 Ответ

0 голосов
/ 28 мая 2020

Попробуйте это

$('.noshow tr td').each(function (k, v) {
    var title = $(v).text();
    if (title === 'Category/Cabinet') {
        var number = parseInt($(this).next().text().split('-')[0])
        if ((number >= 100 && number <= 199) || (number >= 400 && number <= 499)) {
            $(this).closest('.noshow').remove();
        }
    }
});

Также измените noShow на class, а не id, так как у нас не должно быть нескольких идентификаторов с одинаковым именем в dom

Вот рабочий jsfiddle

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...