2016-05-02 23 views
-2

非表示HTMLフォーム要素にidの

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<h2>Question 1</h2> 
 
<div> 
 
</div> 
 
<div> 
 
    <input type="radio" name="name_radio1" value="value_radio1" onclick=$().hide(); />Audio Question 
 
    <input type="radio" name="name_radio1" value="value_radio2" onclick=$().hide(); />Image Question 
 
    <input type="radio" name="name_radio1" value="value_radio3" onclick=$().hide(); />Standard Question 
 
</div> 
 
<div align="center" style="padding:25px;width: 300px;"> 
 
    <input name="question" size="35" class="standardQuestion" type="text" value="" /> 
 
    <br> 
 
    <input name="audioFile" class="audioFile" type="file" /> 
 
    <br> 
 
    <br> 
 
    <textarea name="message" rows="10" cols="20"> 
 
    </textarea> 
 
    <br> 
 
    <input name="imageFile" class="imageFile" type="file" /> 
 
    <br> 
 
</div> 
 
<div> 
 

 
    <h2>Question 2</h2> 
 
    <div> 
 
    </div> 
 
    <div> 
 
    <input type="radio" name="name_radio1" value="value_radio1" onclick=$().hide(); />Audio Question 
 
    <input type="radio" name="name_radio1" value="value_radio2" onclick=$().hide(); />Image Question 
 
    <input type="radio" name="name_radio1" value="value_radio3" onclick=$().hide(); />Standard Question 
 
    </div> 
 
    <div align="center" style="padding:25px;width: 300px;"> 
 
    <input name="question" size="35" class="standardQuestion" type="text" value="" /> 
 
    <br> 
 
    <input name="audioFile" class="audioFile" type="file" /> 
 
    <br> 
 
    <br> 
 
    <textarea name="message" rows="10" cols="20"> 
 
    </textarea> 
 
    <br> 
 
    <input name="imageFile" class="imageFile" type="file" /> 
 
    <br> 
 
    </div> 
 
    <div>

を使用していない `私は、私は、n個の質問に1から追加することができます他の誰かによって開始されたHTMLクイズエディタに追加しようとしています。クイズの質問は、音声録音、画像、または単なるテキストに基づいて行うことができます。質問がオーディオ/画像/テキストベースの質問の場合、オーディオ/画像/テキストベースの質問に関連するHTMLフォーム要素のみを表示する必要があります。クイズに関する質問は、編集者のユーザによって変更/更新/削除することができ、音声質問を画像またはテキストベースの質問に変更することができる。質問タイプがラジオボタンで変更された場合は、その質問タイプの適切なコントロールを表示する必要があります。例えば

...

質問1
ラジオImageQuestionラジオAudioQuestionラジオTextQuestion
ラジオボタンAudioQuestionがある場合はテキストボックス1(ラジオボタンImageQuestionがチェックされている場合にのみ表示さ)
ファイル(のみ表示さテキストボックス2(ラジオボタンTextQuestionがチェックされている場合にのみ表示さ)


)をチェック
質問2(上記と同じ要素) ....
質問N(上記と同じ要素)

各質問は、同じHTMLフォーム要素を有することになるが、それぞれの質問のデータはすべき独立しているので、ユーザーが特定のラジオボタンをクリックしてから質問1のコントロールを非表示にすると、2からNの質問に対しては何も表示されません。

私が扱う重要な制約はありません私が作業しているコードが途中で終了しているので、idを使用してください。 IDの。 IDのハードコードはできませんでした。なぜなら、実際に必要なものがどれくらいあるかわからないからです。 idを追加することは重要な変更ですが、これが唯一の合理的な方法である場合や、これを達成するための最良の方法である場合は、私にお知らせください。最高のアプローチを取るためのアドバイスをいただければ幸いです。今、コードはjquery/javascriptを使用しています。私はそれと基本的なhtml/cssに固執したいと思います。私は自分の研究に基づいて、.parent()。find( "特定のクラス")とonclickイベントのようなコードを使用する必要があるかもしれないと推測していますが、これが正しいアプローチであり、 。ありがとう。

+0

質問を表示したり、隠したりなど、どのように表示しているかの例を提示する必要があります*あなたは現在何を持っていますか?*動作していないものは何ですか?(エラーはありますか?あなたの試みの失敗についての情報を提供できますか?) –

+0

例をサポートするためにコードの一部を入れる必要があります。そうすれば、応答が得やすくなります。 –

+0

フィードバックいただきありがとうございます。私は今までこのサイトに投稿するのが初めてであるので、コードを追加する方法を今まで分かっていませんでした。要点は、idを使用せずに選択したラジオボタンに基づいて、任意の要素のみを表示しようとしていることです。それは、私が特定の要素よりもコンセプトをより心配しているので、どちらが本当に問題になるかは関係ありません。 – celticsfan

答えて

0

あなたはjavascriptなしでこれをしようとしていますか?

+0

私はjavascriptやjqueryを使用しても構いません。私はどちらかの専門家ではありませんが、正しい方向を指していれば、これを解決できるはずです。純粋なcss/htmlがこれを解決するのが簡単なら、それはうまくいくでしょう。私がやっているコードで、私は現在jqueryを使っています。私は実際のコードを投稿したくないのですが、それは時間がかかりすぎてgrailsで結ばれていますが、これはhtml/css/jquery/javascriptに関する質問よりもはるかに難しい質問です。 – celticsfan

+0

それで、明確にするために、私は 'Standard Question'をチェックすると、textarea部分のみを表示し、 'Image Question'をチェックするとアップロードを表示するはずです。 – EpaXapate

+0

はい、あなたは正しいです。しかし、標準質問をクリック/チェックすることはあなたが作業している質問にのみ影響するはずです。質問1を更新すると、質問2の要素の表示に影響しない方法で行う必要があります。少なくとも、私はIDを使用しないことを好むだろう。 – celticsfan

関連する問題