MediaWiki:Common.js: Difference between revisions
Appearance
No edit summary Tag: Reverted |
No edit summary Tag: Reverted |
||
Line 5: | Line 5: | ||
function createFilterInputs(table) { | function createFilterInputs(table) { | ||
let thead = table.querySelector("thead"); | let thead = table.querySelector("thead"); | ||
if (!thead) | if (!thead) { | ||
console.warn("No <thead> found, creating one..."); | |||
let headerRow = table.rows[0]; | |||
if (!headerRow) return; | |||
thead = document.createElement("thead"); | |||
thead.appendChild(headerRow.cloneNode(true)); | |||
table.insertBefore(thead, table.firstChild); | |||
} | |||
let filterRow = document.createElement("tr"); | let filterRow = document.createElement("tr"); | ||
for (let i = 0; i < | for (let i = 0; i < thead.rows[0].cells.length; i++) { | ||
let th = document.createElement("th"); | let th = document.createElement("th"); | ||
let input = document.createElement("input"); | let input = document.createElement("input"); | ||
Line 19: | Line 26: | ||
input.addEventListener("keyup", function () { | input.addEventListener("keyup", function () { | ||
let | let colIndex = | ||
Revision as of 21:00, 11 March 2025
/* Any JavaScript here will be loaded for all users on every page load. */ #Filterable tables document.addEventListener("DOMContentLoaded", function () { function createFilterInputs(table) { let thead = table.querySelector("thead"); if (!thead) { console.warn("No <thead> found, creating one..."); let headerRow = table.rows[0]; if (!headerRow) return; thead = document.createElement("thead"); thead.appendChild(headerRow.cloneNode(true)); table.insertBefore(thead, table.firstChild); } let filterRow = document.createElement("tr"); for (let i = 0; i < thead.rows[0].cells.length; i++) { let th = document.createElement("th"); let input = document.createElement("input"); input.setAttribute("type", "text"); input.setAttribute("placeholder", "Filter..."); input.style.width = "90%"; input.dataset.column = i; input.addEventListener("keyup", function () { let colIndex =