2011-12-03 2 views
1

さまざまなオプションのドロップダウンメニューがあります。特定のメニュー項目を選択したら、さらに多くのオプションを表示したいと思います。オプションの各セットはメニュー項目ごとに異なりますが、どうすればこのようになるのでしょうか?新しいオプションをドキュメントに追加する正しい方法はありますか?JavaScript:異なるドロップダウンメニュー項目を選択すると、表示するオプションが増えます

+1

試したコードを含めてください。 –

+0

[この例](http://jsfiddle.net/Cm9FK/)をご覧ください – Saxoier

答えて

0

エキスパンドメントは非常に大きなトピックで、さまざまな方法で処理できます。あなたのニーズに応じて、あなたは自分のものを動かすよりも、棚から引き離した方が良いでしょう(実際に何をしているのか分からなければ、かなり時間がかかり、 。

ここには非常に単純な例http://javascriptsource.com/navigation/expanding-menu.htmlがありますが、他にも多くのものがあります。ちょうどGoogleのJavaScript拡張メニュー。

また、jQuery(これは私のファンではありませんが、モバイルデバイスサイトで使用するつもりがない限りこのようなものには最適です)を使用したい場合は、この時: http://www.1stwebdesigner.com/css/36-eye-catching-jquery-navigation-menus/

[編集]あなたのコメントに基づいて ...

あなたがする探しているものの詳細を知らなくても、私はあなたのコードのブロックを持っている場合する必要があると言うでしょう誰かが何かをクリックしているかどうかに応じて特別に追加する必要があります。これらのコードブロックが何であるかは確かですが、これを行う最も簡単な方法はありませんが、ボタンのクリックに基づいて、それらを期待するオブジェクトのinnerHTMLに追加します。

ブロックをハッシュ配列として保存し、追加する要素の値をボタンのonclickに割り当てることができます。

これを行うより洗練された方法は、XMLに実際のノードを作成し、表示を「なし」に設定してページに表示されないようにすることです。次に、cloneNodeを使用してそれらのコピーを作成し、それらをappendChildに属しているものにコピーします。

また、具体的な問題なく具体的​​に説明することは困難ですが、一般的にアプローチする方法は2つあります。

+1

私は拡張メニューを意味するものではありません。つまり、アイテムが選択されると、テキストボックスやその他のドロップダウンメニューなど、ドキュメントに追加されるオプションが増えることを意味します。しかし、このパネルは、選択されたメニュー項目ごとに異なる必要があります。 jQueryの使用も許可されていませんが、プロジェクトの要件です。 – Neeta

+0

ああ!うーん... +1 jQueryを使用していない:)私はあなたにこれを処理するための正しい方法についてのヒントを与えるために私の答えを変更します –

+0

私は両方の方法を理解しようとしています。私はウェブのデザインには本当に新しく、頭を丸くするのは難しいです! 1番目の方法は、それぞれのパネルに別々のHTMLファイルを作成して、それぞれのメニュー項目に関連付けたいのですか?あなたの2番目の方法は私を少し混乱させます。各パネルのIDや各HTMLファイルへの参照などのカスタムマークアップを作成し、選択されたメニュー項目に応じてそれらを追加することを意味しますか? – Neeta

関連する問題