「MediaWiki:Gadget-SearchInshokuten.js」の版間の差分
MediaWikiインターフェイスページ
その他の操作
編集の要約なし |
編集の要約なし タグ: 差し戻し済み |
||
| 24行目: | 24行目: | ||
}); | }); | ||
document.addEventListener('DOMContentLoaded', function () { | // document.addEventListener('DOMContentLoaded', function () { | ||
const params = new URLSearchParams(window.location.search); | // const params = new URLSearchParams(window.location.search); | ||
params.forEach((value, key) => { | // params.forEach((value, key) => { | ||
// input, select, checkbox, radio 全対応 | // // input, select, checkbox, radio 全対応 | ||
const el = document.querySelector(`[name="${key}"]`); | // const el = document.querySelector(`[name="${key}"]`); | ||
if (!el) return; | // if (!el) return; | ||
// checkbox / radio (name[] の対応含む) | // // checkbox / radio (name[] の対応含む) | ||
if (el.type === "checkbox" || el.type === "radio") { | // if (el.type === "checkbox" || el.type === "radio") { | ||
document.querySelectorAll(`[name="${key}"]`).forEach(input => { | // document.querySelectorAll(`[name="${key}"]`).forEach(input => { | ||
if (input.value === value) { | // if (input.value === value) { | ||
input.checked = true; | // input.checked = true; | ||
} | // } | ||
}); | // }); | ||
} else { | // } else { | ||
// text / select など | // // text / select など | ||
el.value = value; | // el.value = value; | ||
} | // } | ||
}); | // }); | ||
const clearBtn = document.querySelector('.clear-btn'); | // const clearBtn = document.querySelector('.clear-btn'); | ||
const form = document.getElementById('searchForm'); | // const form = document.getElementById('searchForm'); | ||
clearBtn.addEventListener('click', function () { | // clearBtn.addEventListener('click', function () { | ||
form.reset(); | // form.reset(); | ||
}); | // }); | ||
}); | // }); | ||
} | } | ||
2025年12月8日 (月) 17:58時点における版
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;
// }
// });
// const clearBtn = document.querySelector('.clear-btn');
// const form = document.getElementById('searchForm');
// clearBtn.addEventListener('click', function () {
// form.reset();
// });
// });
}