diff -u b/core/modules/system/system.admin.inc b/core/modules/system/system.admin.inc --- b/core/modules/system/system.admin.inc +++ b/core/modules/system/system.admin.inc @@ -821,7 +821,7 @@ '#title' => t('Search module list'), '#title_display' => 'invisible', '#size' => 20, - '#placeholder' => t('Search module...'), + '#placeholder' => t('Search modules...'), '#attributes' => array( 'class' => array('table-filter-text'), 'data-table' => '#system-modules', diff -u b/core/modules/system/system.modules.js b/core/modules/system/system.modules.js --- b/core/modules/system/system.modules.js +++ b/core/modules/system/system.modules.js @@ -78,7 +78,7 @@ attach: function (context, settings) { var $input = $('input.table-filter-text').once('table-filter-text'); var $table = $($input.attr('data-table')); - var $rowsAndDetails, $labels, $details; + var $rows, $rowsAndDetails, $details; function hidePackageDetails(index, element) { var $details = $(element); @@ -89,15 +89,16 @@ function filterModuleList (e) { var query = $(e.target).val().toLowerCase(); - function showModuleRow (index, element) { - var $element = $(element); - var textMatch = $element.text().toLowerCase().indexOf(query) !== -1; - $element.closest('tr').toggle(textMatch); + function showModuleRow (index, row) { + var $row = $(row); + var $sources = $row.find('.table-filter-text-source'); + var textMatch = $sources.text().toLowerCase().indexOf(query) !== -1; + $row.toggle(textMatch); } // Filter if the length of the query is at least 2 characters. if (query.length >= 2) { - $labels.each(showModuleRow); + $rows.each(showModuleRow); // Hide the package
if they don't have any visible rows. // Note that we first show() all
to be able to use ':visible'. @@ -110,7 +111,7 @@ if ($table.length) { $rowsAndDetails = $table.find('tr, details'); - $labels = $table.find('.table-filter-text-source'); + $rows = $table.find('tbody tr'); $details = $table.find('details'); // @todo Use autofocus attribute when possible.