我试图替换一组span
中的所有td
元素。他们有这样的内容:
<span class='close_span'>
<input type="button" class="close_pop_btn removebtn"/>
</span>
完整的td
是这样的:
<td>
<span class='close_span'>
<input type="button" class="close_pop_btn removebtn"/>
</span>
<!-- other tags here -->
</td>
我想在所有tds中删除所有带有span
类的close_span
元素,并在jquery / javascript变量中获取结果字符串。那是可能的,如果是这样的话怎么样?
答案 0 :(得分:1)
尝试在.end()
附近使用.remove()
,document
,.find()
,选择"table"
。从此处可以选择使用table
,html
返回整个.get()
.outerHTML
;或者使用td
html
.find(table td).map(function() {return this.outerHTML}).get()
var tableHTML = $("table span").remove().end()
.find("table").get(0).outerHTML;
console.log(tableHTML)
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<table>
<tbody>
<tr>
<td>
<span class='close_span'>
<input type="button" class="close_pop_btn removebtn"/>
</span>
<!-- other tags here -->
<div>div 1</div>
</td>
</tr>
<tr>
<td>
<span class='close_span'>
<input type="button" class="close_pop_btn removebtn"/>
</span>
<!-- other tags here -->
<div>div 2</div>
</td>
</tr>
</tbody>
</table>
&#13;
答案 1 :(得分:0)
如果您只想删除跨度后的td内容:
var tdsWithoutSpan = $('td')
.find('> span.close_span')
.remove()
.end();
tdsWithoutSpan.each(function (index, td) {
console.log(td);
});
但是如果你想要表的内容:
var table = $('table')
.find('td > span.close_span')
.remove()
.end();
console.log(table.parent().html());