2015-10-19 226 views
0

我想顯示/隱藏div取決於選擇。jquery隱藏div沒有顯示在加載頁面

下面的代碼可以正常工作,但在使用默認選定值(opt3)加載頁面時不起作用。

我該如何獲得第一次加載jQuery的div id#opt3 diplayed?

<body> 

     <div> 

     <p> 

       <select name="routing-sel" id="routing"> 

         <option value="opt1">opt1</option> 

         <option value="opt2">opt2</option> 

         <option value="opt3" selected>opt3</option> 

         <!-- the selected value will be dynamically generated by PHP--> 

       </select> 

       </p> 

     </div> 



     <div id="opt1" class="form" style="display:none"> 

       <p>opt1 selected</p> 

     </div> 

     <div id="opt2" class="form" style="display:none"> 

       <p>opt2 selected</p> 

     </div> 

     <div id="opt3" class="form" style="display:none"> 

       <p>opt3 selected</p> 

     </div> 



     <script src="jquery-1.11.3.min.js"></script> 



     <script> 

     $(document).ready(function() { 

       $('select#routing').change(function() { 

         $('.form').hide(); 

         $('#' + $(this).val()).show(); 

       }); 

     }); 

     </script> 

</body> 
+0

'$( '#' + $( '#選擇路由')。VAL())。節目() ;'? –

回答

0

你可以這樣說:

$(document).ready(function() { 

      $('#' + $("#routing").val()).show(); // Show default chosen option on load 

      $('select#routing').change(function() { 

        $('.form').hide(); 

        $('#' + $(this).val()).show(); 

      }); 

    }); 

http://jsfiddle.net/sandenay/8zewxp7r/

0

只需修改您的document.ready了這一點。這將工作..

$(文件)。就緒(函數(){

$('#' + $('select#routing').val()).show(); 

      $('select#routing').change(function() { 

        $('.form').hide(); 

        $('#' + $(this).val()).show(); 

      }); 

    });