2014-10-19 58 views
2

我有一些通常不顯示的行的表(使用CSS顯示類:「none」;)。在按鈕上按我想要顯示這些行。 問題是整個表格被動態地添加到頁面,所以代碼不起作用。關於動態添加元素的jQuery css()

HTML

<tr class="HiddenRowClass"> .... </tr> 

JS

function ShowRowsClick() { 
$(".HiddenRowClass").css("display",""); 
} 

我已閱讀有關使用。對()事件綁定動態生成的元素,但我無法找到任何說起非事件綁定。 (如果這是它的正確名詞)

+0

刪除css屬性顯示,而不是'$(「.cssClass」)。removeCss(「display」)' – Mihir 2014-10-19 06:46:25

+0

@Mhhir你確定嗎? – doniyor 2014-10-19 06:48:38

+0

@ doniyor謝謝。請忽略我之前的評論,方法removeCss不存在。 'show'方法可以。 – Mihir 2014-10-19 06:55:22

回答

3

您必須進行顯示顯示。

$(".HiddenRowClass").css("display","block"); 

或者因爲你使用"display:none"隱藏它,你可以使用一個jQuery函數來顯示它。

$(".HiddenRowClass").show(); 
+0

謝謝。這可以工作(.show())。我經常使用display:none,然後顯示:「」來隱藏和取消隱藏事物。我不知道爲什麼它在這種情況下不起作用? – 2014-10-19 07:00:00

+0

@DavidG'display:「」'不起作用,在這種情況下,你在類中有'display:none',所以你需要'display:block'來覆蓋'HiddenRowClass'中的'display: – scartag 2014-10-19 07:03:11

0

如何動態添加行?以及如何將按鈕單擊事件綁定到ShowRowsClick()函數?只要在DOM中的行被按下後按下按鈕,並且有一個事件將按鈕點擊到您的ShowRowsClick()函數,您應該沒問題。如果在單擊按鈕後添加行,那麼您必須執行一些更復雜的操作,例如讓按鈕單擊功能設置狀態變量,並讓行添加功能檢查該變量以查看是否應顯示行。