如何获取DIV内的所有内容?我想在我的页面上保存#wrapper DIV中存在的所有代码。这很容易。但问题是......如何为一个特定对象选择所有EXCEPT(带有“main”类的图像)。
您可以在此处查看其工作原理http://www.jsfiddle.net/8A27a/
这是我到目前为止所做的:
<div id="wrapper">
<div class="icon"><img src="http://www.yousendit.com/en_US/theme_default/images/g_logo_trans_110x63.gif"></div>
<div class="icon"><img src="http://www.yousendit.com/en_US/theme_default/images/g_logo_trans_110x63.gif"></div>
<div class="icon"><img src="http://www.yousendit.com/en_US/theme_default/images/g_logo_trans_110x63.gif"></div>
<img class="main" src="http://afteramerica.files.wordpress.com/2010/01/061221225103_abraham_lincoln_lg1.jpg">
</div>
<input type="button" value="save" class="save">
<script>
$(document).ready(function() {
$('.save').live('click', function() {
var content = $('#wrapper').html();
alert(content);
});
});
</script>
答案 0 :(得分:9)
我能想到的唯一可靠方法是克隆DIV,删除IMG标记并获取生成的HTML:
var e = $('#wrapper').clone();
$('img.main', e).remove();
alert(e.html());
请注意,对于包含大量内容的DIV,这可能效率低下。
答案 1 :(得分:3)
试试这个
$('.save').live('click', function() {
var content = $('#wrapper > *').not('img.main').clone();
content = $('<div></div>').append(content);
content = content.html();
alert(content);
});
[edit]改进示例以匹配OP的示例。
答案 2 :(得分:1)
查看.not
选择器:http://api.jquery.com/not-selector/