利用規約の同意チェックなど、チェック状態に応じて送信ボタンを非活性化・活性化する強化ガジェットを作成しました。
フォーム入力補助機能を強化したい時に活用してみてください。
変更・改定履歴
-
改定
コメントアウトの文章を修正
-
改定
ver.2.20アップデートに伴い注意事項を追記
設定方法
マルチセレクトの項目が 1項目の場合のみ、動作いたしません。
| agree_field | マルチセレクトのname値を設定します。 フィールドIDを "" の中に入力してください。 ※name値は、「f0」+「フィールドID」となります。 例)フィールドIDが10の場合、"10" と設定してください。 |
|---|
// 設定値
const agree_field = "f0" + ""; // マルチセレクトのフィールドID
// 原則変更不可
// 複数強化パーツがある場合、変更あり
window.onload = function () {
agree_config();
};
// 変更不可
// 複数強化パーツがある場合、下記を変更不可箇所に追加
var agreeCheckBoxField = document.getElementsByName(agree_field);
var buttonField = document.getElementsByName("action");
function agree_config() {
if (agreeCheckBoxField[0]) {
if(agreeCheckBoxField[0].checked) {
agreeCheckBoxField[0].checked = false;
}
buttonField[0].disabled = true;
buttonField[0].style.opacity = "0.5";
agreeCheckBoxField[0].addEventListener('click',agreeChange);
}
}
function agreeChange() {
if(agreeCheckBoxField[0].checked) {
buttonField[0].disabled = false;
buttonField[0].style.opacity = "1";
}else{
buttonField[0].style.opacity = "0.5";
buttonField[0].disabled = true;
}
}
参考イメージ
チェック状態と未チェック状態のイメージとなります。
未チェックの場合、ボタンの色を 50% 透過させる作りとなっておりますので、自由に色を指定できます。
最後に
設定後は動作確認を必ず行い、動作に問題がないか確認をしてください。
また、不具合やほかのやり方が知りたい等あれば、下記の「コンテンツに関しての要望はこちら」からご連絡ください。

