2011-12-27 10 views
2

このコードはうまくいきましたが、チェックボックスの代わりにドロップダウンメニューを使用するように変更したいと思います。たとえば、「More?」のドロップダウンメニューの選択肢「はい」または「いいえ」となります。メニューで「はい」を選択した場合、現在のコードのチェックボックスをチェックしたときと同じように、非表示のdivが表示されるようにします。このコードを変更して、チェックボックスの代わりにメニューをドロップした隠しフォームを表示するにはどうすればよいですか?

のjavascript:

<script language="JavaScript"> 
    function showhidefield() 
    { 
    if (document.frm.chkbox.checked) 
    { 
     document.getElementById("hideablearea").style.display = "block"; 
    } 
    else 
    { 
     document.getElementById("hideablearea").style.display = "none"; 
    } 
    } 
</script> 

そして、これはHTMLです:

<form name='frm' action='nextpage.asp'> 
    <input type="checkbox" name="chkbox" onclick="showhidefield()"> 
    Check/uncheck here to show/hide the other form fields 
    <br> 
    <div id='hideablearea' style='visibility:hidden;'> 
    <input type='text'><br> 
    <input type='submit'> 
    </div> 
    This is a text line below the hideable form fields.<br> 
</form> 

ありがとうございました。

答えて

0

<select name="more" onchange="showhidefield()"> 
    <option value="yes">Yes</option> 
    <option value="yes">Yes</option> 
</select> 

であなたのチェックボックスを交換し、

if (document.frm.more.value == 'yes') 
+0

これは非常にうまく働いています。私はこの節約なしで復帰をしているようには見えません。 –

+0

この部分を変更しました: ' <オプション値=「yes」とは>はい <オプション値=「なし」>ノー ' そして、私はメニューに「はい」を選択したときに、今、それは素晴らしい作品と、非表示のフォームを示しています! 次のように、非表示のオプション領域を「必須」にするコードの部分もあります。これは私が実行しているいくつかのjqueryバリデーションで動作します。 「newsletter.group」:{ 必要:「#のニュースレター4:チェックする」、 MINLENGTH:1 は、私が代わりに元の「はい」を選択のメニューオプションで動作します何か他のものに「確認」に変更できますチェックボックスの値が「チェックされていますか? –

0
<form name='frm' action='nextpage.asp'> 
    <select name="chkbox" onChange="showhidefield(this)"> 
    <option value="0" selected="true">-Select-</option> 
    <option value="1">Yes</option> 
    <option value="2">No</option> 
    </select> 
    Check/uncheck here to show/hide the other form fields 
    <br> 
    <div id='hideablearea' style='display:none;'> 
    <input type='text'><br> 
    <input type='submit'> 
    </div> 
    This is a text line below the hideable form fields.<br> 
</form> 

とJavaScriptコードを使用してshowhidefield()機能で

if (document.frm.chkbox.checked) 

を交換するには、次のとおりです。

<script language="JavaScript"> 
    function showhidefield(that) 
    { 
    if (that.value == 1) 
    { 
     document.getElementById("hideablearea").style.display = "block"; 
    } 
    else 
    { 
     document.getElementById("hideablearea").style.display = "none"; 
    } 
    } 
</script> 
+0

これは機能しませんでした。私はそれを修正するために何を変更するか分からない。 –

+0

OK、私は自分のコードを編集しているし、確かにそれは動作します。 –

+0

さて、私は正確な問題を抱えています。 visibiltyプロパティを使用していて、表示を設定しようとしましたが、私のコードは動作します –

関連する問題