MediaWiki:Common.js
From CTLTMS
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */
// Javascript/jQuery code for searching tables
function search_table(tableID, value){
$('#'+tableID+' tr').each(function(){
var found = 'false';
if (!$(this).hasClass('non-searchable')) {
$(this).each(function(){
if ($(this).find('td.non-searchable').length > 0) {
found = 'true';
} else if (!$(this).find('th').length > 0) {
if($(this).text().toLowerCase().indexOf(value.toLowerCase()) >= 0)
{
found = 'true';
}
} else {
// Always keep the header row
found = 'true';
}
});
if(found == 'true')
{
$(this).show();
}
else
{
$(this).hide();
}
}
});
}
$(document).ready(function(){
// Alternative method - makes all tables with 10 or more rows (including header) searchable automatically
// $("table > tbody > tr:nth-child(10)").closest("table").each(function(index, element) {
$("table.apt-searchable").each(function(index, element) {
var tableID = this.id;
if (tableID == '') {
tableID = "aptSearchableTable_" + (index + 1);
$(this).attr("id", tableID);
}
$('<input type="text" id="'+tableID+'_'+index+'" onkeyup="search_table(\''+tableID+'\',$(this).val())" placeholder="Search the table..."><input type="button" onclick="$(\'#'+tableID+'_'+index+'\').val(\'\');search_table(\''+tableID+'\',\'\')" title="Clear Entry" class="apt-search-clear">').insertBefore($(this));
});
});