0

こんにちは私は以下のこのコードを使おうとしています。コードは気に入っていますが、デフォルトをDIV Area1にします。ドロップダウンメニューにDIVArea1を表示するHTMLコードがありますが、JavascriptにデフォルトでDIVAREA1を表示します。コードは何でしょうか?

    <script type="text/javascript">
    $(document).ready(function(){
        $('.box').hide();
        $('#dropdown').change(function() {
            $('.box').hide();
            $('#div' + $('#dropdown').val()).show();
        });
    });
</script>

<form>
    <select id="dropdown" name="dropdown">
     <option value="0">Choose</option>
     <option value="area1" selected="selected">DIV Area 1</option>
     <option value="area2">DIV Area 2</option>
     <option value="area3">DIV Area 3</option>
    </select>
</form>

<div id="divarea1" class="box">DIV Area 1</div>
<div id="divarea2" class="box">DIV Area 2</div>
<div id="divarea3" class="box">DIV Area 3</div>
4

3 に答える 3

5
$('.box').hide().first().show();

または:

$('.box').hide().filter("#divarea1").show(); 

ライブデモ

上記のいずれかをDOMreadyイベントに入れます。

$(function(){ /*...*/ });

または

$(document).ready(function(){ /* ... */ });

完全なコード:(選択したdivを表示する方法に関する次の質問に答える必要があります...)

$(document).ready(function() {

    $('.box').hide().filter("#divarea1").show();

    $('#dropdown').change(function() {
        var selectedId= $(this).find(':selected').text().replace(/\s/g, "").toLowerCase();
        console.log(selectedId);
        $('.box').hide().filter('#' + selectedId).show();
    });
});​
于 2012-06-05T18:05:15.913 に答える
1

これを行うことができます...

$('.box').hide().filter(':first').show();

于 2012-06-05T18:08:33.037 に答える
0

単純な問題に対する多くの複雑な答え:

$('.box:gt(0)').hide();

私はそれを次のようにコーディングします:

 $(document).ready(function(){
     $('.box:gt(0)').hide();

    $('#dropdown').change(function() {
        $('.box:visible').hide();
        if ($(this).prop('selectedIndex')>0)
            $('.box').eq($(this).prop('selectedIndex')-1).show();        
    });
});​

http://jsfiddle.net/lucuma/xNZWY/

ドロップダウンから最初のオプションを削除すると(事前に選択しているので必要ですか?)、削除できるため、少し簡単になります。if

$(document).ready(function(){
     $('.box:gt(0)').hide();

    $('#dropdown').change(function() {
        $('.box:visible').hide();
        $('.box').eq($(this).prop('selectedIndex')-1).show();        
    });
});​
于 2012-06-05T18:49:16.490 に答える