formbridgeでの日付フィールド入力制限

何を実現したいのかを書きましょう

・特定の日付フィールド(ソースではdesireddayと定義)に以下の入力規則を実装したい
①平日のみが選択可能(土日祝は選択できない)
②入力日から1か月以降の日付が選択できる
・その他前提条件
フォームブリッジはステップフォームを利用しており、
制限をかけたいフィールドは2ステップ目で表示

発生した問題やエラーメッセージを具体的に書きましょう

・過去の記事を参考にもしたのですが動作しません
【フォームブリッジ】日付フィールドに制限をかけたい
・自作でもコードを書いてみましたが
動作せず、カレンダーで自由な日が選択できてしまいます
(以下ソースコードは自作側)
イベント発生が指定できていないからでしょうか。。

実行したコードをコピー&ペーストしましょう

// DOMContentLoadedイベントが発生したときに実行される関数を設定
document.addEventListener('DOMContentLoaded', function() {
    // 祝日のリストを定義
    const holidays = [
        '2024-01-01', // 元日
        '2024-01-08', // 成人の日
        '2024-02-11', // 建国記念の日
        // 他の祝日を追加
    ];

    // 入力フィールドとエラーメッセージ要素を取得
    const dateField = document.querySelector('input[name="desiredday"]');
    const errorMessage = document.createElement('span');
    errorMessage.style.color = 'red';
    dateField.parentNode.appendChild(errorMessage);

    // 入力フィールドの値が変更されたときに実行されるイベントリスナーを追加
    dateField.addEventListener('input', function() {
        // 入力された日付を取得
        const selectedDate = new Date(dateField.value);
        const today = new Date();
        const oneMonthLater = new Date();
        oneMonthLater.setMonth(today.getMonth() + 1);

        // 曜日とフォーマットされた日付を取得
        const day = selectedDate.getDay();
        const formattedDate = selectedDate.toISOString().split('T')[0];

        // 入力された日付が1か月以内の場合のエラーメッセージ
        if (selectedDate < oneMonthLater) {
            errorMessage.textContent = '選択できるのは今日から1か月以降の日付です。';
            dateField.value = '';
        // 入力された日付が土日または祝日の場合のエラーメッセージ
        } else if (day === 0 || day === 6 || holidays.includes(formattedDate)) {
            errorMessage.textContent = '平日のみ選択可能です。';
            dateField.value = '';
        // 有効な日付の場合はエラーメッセージをクリア
        } else {
            errorMessage.textContent = '';
        }
    });
});