我对find方法有疑问。
我希望能够识别包含input
标记的单元格。
我的HTML就像
<table>
<tr>
<td> celll </td>
<td> celll </td>
<td> celll </td>
</tr>
<tr>
<td> celll </td>
<td> <span><input type='text'></span> </td>
<td> <span><input type='text'></span> </td>
</tr>
</table>
我的Jquery
$('table').find('td').each(function(){
if($(this).find("input").length){
console.log('found')
}
})
我的代码似乎找不到它。有小费吗?非常感谢!
答案 0 :(得分:1)
不要使用.find()
两次,只需使用一次并获取.closest()
单元格:
$('table').find('input').each(function(){
var parent = $(this).closest('td');
//do something with parent
});
答案 1 :(得分:0)
只需使用:$('table input').parents('td');
JSFiddle:http://jsfiddle.net/aPjwE/
答案 2 :(得分:0)
答案 3 :(得分:0)
var cells = $('table').find('td');
$.each(cells, function(i){
var that = $(this);
var hasInput = that.find("input");
if(hasInput.length > 0){
console.log("td #" + i + " has an input sire.");
}
});