2014-01-08 104 views
0

我正在創建一個表並在其創建後立即隱藏它。 [不想面對DOM]。然後用戶從下拉列表中選擇並顯示它。它的工作正常。但是當我第一次去那個頁面時,它並沒有隱藏那個div。在隱藏div時面臨問題

代碼

<table class="table table-striped table-bordered " id="book_info" > 
    <tbody> 
    <tr> 
    <td> 
    ... 
    </td> 
    </tr> 
    </tbody> 
    </table> 
    <script> $('#book_info').hide(); 
      alert("passed"); 
    </script> 
    <!-- remaining html stuff--> 

該警報不會當我轉到該網頁的打擊。當我刷新頁面,它顯示警報...

+3

爲什麼不使用CSS? '#book_info {display:none;}'? – j08691

+0

那麼如何顯示它呢? –

+0

你需要一個觸發器,例如點擊功能或其他事件(如懸停)。您可能需要發佈更多的HTML。 – lharby

回答

1

你需要用你的jQuery方法調用document ready()

$(document).ready(function() { 
    $('#book_info').hide(); 
    ... 
}); 

或者你可以只使用CSS最初呈現隱藏表:

#book_info { 
    display: none; 
} 

...然後調用jQuery的show()方法時要顯示的:

$('#book_info').show(); 
+1

您不應該需要...腳本定義在元素之後... – qwertynl

+0

它不起作用。 –

+0

它似乎你正在使用bootstrap只是使用類「隱藏」與表和默認表將被隱藏,然後使用您的jQuery代碼來顯示它回來! – ammu