2016-07-29 80 views
2

只有當button不在tr內時,我纔想執行我的if條件。這裏是我的代碼:如果一個按鈕不在<tr>元素內,則執行if條件

if (!$("tr").hasClass('hidebutton')) { 
    var OriginalContent = $("#tabletask tr[data-id='" + parrentid + "'] > td:first-child").text(); 
    $("#tabletask tr[data-id='" + parrentid + "'] > td:first-child").html("<button class=hidebutton>-</button> " + OriginalContent + " "); 
} 

但它不工作。 if條件一直在執行。

+2

可能的複製[顯示無如果使用數據ID空](HTTP://計算器.com/questions/38651489/display-none-if-null-using-data-id) – eisbehr

+0

抱歉,我沒有收到它..可以請你解釋一下 –

+0

你想在'button'不在'tr',對嗎?所以這就像在發佈的問題。你可以用'tr:not(:has(button))'這樣的東西。 – eisbehr

回答

5

我想我得到了一些你想要的東西。

看起來好像你要創建一個按鈕,如果沒有找到裏面的「tr」按鈕的權利?如果我是正確的,你可以在下面播放片段。

if(!$("tr button").hasClass("hidebutton")){ 
$("#tabletask tr[data-id='" + parrentid + "'] > td:first-child").html('<button class="hidebutton">-</button> ' + OriginalContent); 
} 

順便說一下,好像你錯過了這條線

html("<button class=hidebutton>-</button> " + OriginalContent + " "); 

您需要附上hidebutton這樣的「hidebutton」見下面的東西;

.html("<button class='hidebutton'>-</button> " + OriginalContent + " "); 
+0

其工作感謝 –

+1

這是偉大的:) –

0

另一種方式是使用一個循環:

$("tr").each(function(index, value) { 
    if (!$(this).hasClass('hidebutton')){ 
     console.log($(this,"td:first-child").text()); 
    } 
}); 

看一看的jsfiddle

相關問題