サポート » プラグイン » カスタムフィールドテンプレートで絞り込み検索、条件が選択されなかっ

  • 解決済 yoy004

    (@yoy004)


    カスタムフィールドテンプレートを使って絞り込み検索をしたいと考えています。
    そこで、条件が選択されていなかった場合に「選択されていません」とアラートまたは検索ボタンを押せないようにしたいと思っています。
    PHPは勉強しながら対応してます。
    ぜひ、どなたかお力を貸し下さい。

    ・[cftsearch]を使ってテンプレートに表示
    ・javascriptでアラートまたはdisabled設定

    <script type=”text/javascript”>
    function check(){
    var flag = 0;
    // 設定開始
    if(document.form1.cftsearch[スポーツ][0][].value == “”){ // 「スポーツ」をチェック
    flag = 1;
    }
    else if(document.form1.field2.value == “”){ // 「くだもの」をチェック
    flag = 1;
    }
    // 設定終了
    if(flag){

    window.alert(‘選択されていません’); // 入力漏れがあれば警告ダイアログを表示
    return false; // 送信を中止

    }
    else{
    return true; // 送信を実行
    }
    }
    </script>

    <form method=”get” action=”” id=”cftsearch0″ onSubmit=”return check()”>
    <p>スポーツ:<select name=”cftsearch[スポーツ][0][]”>
    <option value=””>選択してください
    <option value=”sample1″>選択サンプル1
    <option value=”sample2″>選択サンプル2
    <option value=”sample3″>選択サンプル2
    </select></p>

    <p>くだもの:<select name=”field2″>
    <option value=””>選択してください
    <option value=”sample1″>選択サンプル1
    <option value=”sample2″>選択サンプル2
    <option value=”sample3″>選択サンプル2
    </select></p>

    <p><input type=”submit” value=”送信”></p>
    </form>

    ※補足
    カスタムフィールドテンプレートだと通常、
    <p>スポーツ:[スポーツ]</p>
    <p>くだもの:[くだもの]</p>
    で良いと思いますが、これだとjavascriptが指定できなかった為、selectで記入しました。

    cftserachで実行するとソースでは、フィールド名が 「cftsearch[スポーツ][0][]」でした。
    こちらのフィールド名で指定するとjavascriptが上手く動作しません。
    どのようにフィールド名を記述するのが良いか、何か良い方法がないか、どなたかヒントでも構いませんので、ご意見いただけると助かります。

  • トピック「カスタムフィールドテンプレートで絞り込み検索、条件が選択されなかっ」には新たに返信することはできません。