「MediaWiki:Gadget-SearchInshokuten.js」の版間の差分
MediaWikiインターフェイスページ
その他の操作
ページの作成:「if ( document.querySelector('#searchForm') ) { console.log("検索画面起動") }」 |
編集の要約なし |
||
| 1行目: | 1行目: | ||
if ( document.querySelector('#searchForm') ) { | if ( document.querySelector('#searchForm') ) { | ||
document.getElementById('searchForm').addEventListener('submit', function (e) { | |||
const searchText = document.getElementById('searchText'); | |||
const genre = document.getElementById('genre'); | |||
const station = document.getElementById('station'); | |||
const budget_min = document.getElementById('budget_min'); | |||
const budget_max = document.getElementById('budget_max'); | |||
if (searchText.value === '') { | |||
searchText.removeAttribute('name'); // 空のとき name属性を削除 | |||
} | |||
if (genre.value === '') { | |||
genre.removeAttribute('name'); // 空のとき name属性を削除 | |||
} | |||
if (station.value === '') { | |||
station.removeAttribute('name'); // 空のとき name属性を削除 | |||
} | |||
if (budget_min.value === '') { | |||
budget_min.removeAttribute('name'); // 空のとき name属性を削除 | |||
} | |||
if (budget_max.value === '') { | |||
budget_max.removeAttribute('name'); // 空のとき name属性を削除 | |||
} | |||
}); | |||
document.addEventListener('DOMContentLoaded', function () { | |||
const params = new URLSearchParams(window.location.search); | |||
params.forEach((value, key) => { | |||
// input, select, checkbox, radio 全対応 | |||
const el = document.querySelector(`[name="${key}"]`); | |||
if (!el) return; | |||
// checkbox / radio (name[] の対応含む) | |||
if (el.type === "checkbox" || el.type === "radio") { | |||
document.querySelectorAll(`[name="${key}"]`).forEach(input => { | |||
if (input.value === value) { | |||
input.checked = true; | |||
} | |||
}); | |||
} else { | |||
// text / select など | |||
el.value = value; | |||
} | |||
}); | |||
}); | |||
} | } | ||
2025年12月8日 (月) 17:44時点における版
if ( document.querySelector('#searchForm') ) {
document.getElementById('searchForm').addEventListener('submit', function (e) {
const searchText = document.getElementById('searchText');
const genre = document.getElementById('genre');
const station = document.getElementById('station');
const budget_min = document.getElementById('budget_min');
const budget_max = document.getElementById('budget_max');
if (searchText.value === '') {
searchText.removeAttribute('name'); // 空のとき name属性を削除
}
if (genre.value === '') {
genre.removeAttribute('name'); // 空のとき name属性を削除
}
if (station.value === '') {
station.removeAttribute('name'); // 空のとき name属性を削除
}
if (budget_min.value === '') {
budget_min.removeAttribute('name'); // 空のとき name属性を削除
}
if (budget_max.value === '') {
budget_max.removeAttribute('name'); // 空のとき name属性を削除
}
});
document.addEventListener('DOMContentLoaded', function () {
const params = new URLSearchParams(window.location.search);
params.forEach((value, key) => {
// input, select, checkbox, radio 全対応
const el = document.querySelector(`[name="${key}"]`);
if (!el) return;
// checkbox / radio (name[] の対応含む)
if (el.type === "checkbox" || el.type === "radio") {
document.querySelectorAll(`[name="${key}"]`).forEach(input => {
if (input.value === value) {
input.checked = true;
}
});
} else {
// text / select など
el.value = value;
}
});
});
}