私は、互いに直接影響を与える一対のフォームフィールドに取り組んでいます。特に私が取り組んでいる問題は、私が取り組んできたこのWebサイトにユーザーが参加できる何千ものグループがあることです。サイトの管理分析フォームをいくつか作成しています。それらのフォームの一部は、グループによるフィルタリングです。
問題は、ほとんどの人が頭のてっぺんからグループの名前を知らず、それが何から始まるのかだけを知っているということです。したがって、オートコンプリートを使用する代わりに、2つのドロップダウンを考え出しました。1つ目は、オプションAからZ、グループ名が始まるアルファベットの文字を含みます。2番目のドロップダウンには、選択した文字で始まるすべてのグループが含まれます。
概念は十分に単純であり、jQueryを使用してAJAXを非常に簡単に実装することができました。ただし、これにより検証エラーが発生します。いくつかの調査の結果、これはDrupalフォームのキャッシュに関係していることがわかりました。解決策は、ahah関数を使用することです。
それに関する問題は、私がこれまでに見つけたすべての命令が、別のフィールドではなく、それ自体を更新する指定されたフィールドのahahアクションを扱っていることです。そこで、ahahを使用してグループリストを更新し、フォームキャッシュに新しい値を登録するために、文字のリストを取得する方法を理解しようとしています。
私が見つけた解決策の1つは、ページ上のすべての値を非表示のドロップダウンにロードし、必要に応じて、セット内の値を表示されているドロップダウンにロードすることでした。しかし、クライアントはほぼ独占的にIEを使用しており、そのような巨大なリストが与えられたときにIEがチョークするのを見たため、これは多くの問題を引き起こします。特にJavaScriptに保存されているリストの場合。したがって、軽量のソリューションが必要です。
何かご意見は?アイデア?