回覆您進一步編輯:使用find
:這個問題之前
$(this).closest('tr').children().each(function(){
// Get all `img` elements that are in this cell
var $img = $(this).find("img");
});
年長的答案是明確的:
如果沒有更多的情況下,它的難以 回答非常好,但基本上,使用CSS選擇器的jQuery()
函數(通常別名爲$()
)。所以這可能是:
var img = $("td img");
或獨生子女
var img = $("td > img");
但要注意在這兩種情況下,你會得到所有img
元素是後代(第一個例子)或直接孩子(第二個例子)的td
元素。
此外,在上述兩種情況下,您將得到一個包裝一組匹配元素的jQuery對象。爲了獲得實際的底層DOM元素,索引到對象中。因此,舉例來說,這會給你的第一個img
元素是你的文檔中的td
元素的後代:
var rawImgElement = $("td img")[0];
...如果沒有任何,這將是undefined.
回覆您的編輯:
...我想擺脫的<td></td>
它仍然非常不清楚你想達到什麼。下面是一個將所有img
元素從表格中移出的示例,並將它們放在表格後面(因爲當然,您不能將img
元素移出td
元素,因爲img
不能成爲tr
的直接子元素)。
HTML:
<table id="myTable">
<tbody>
<tr>
<td><img src="blah1.png"></img></td>
<td><img src="blah2.png"></img></td>
<td><img src="blah3.png"></img></td>
</tr>
</tbody>
</table>
的JavaScript:
$(function() {
var $myTable = $("#myTable");
$("td > img").each(function() {
var $img = $(this),
$td = $img.parent();
$img.insertAfter($myTable);
});
});
...當然,則該表可以是空的,並且可能需要刪除行等
這是一個非常模糊的問題。沒有更多的信息,答案可能就像'$(「img」);' – 2012-04-27 08:30:19
你想在'td'內提取'img'?或''td'裏面'img'與'src =「blah」'或..?請更具體地說:s – 2012-04-27 08:30:41
我編輯了我的問題。抱歉混淆。 – 2012-04-27 08:34:10