获取元素的当前HTML

时间:2013-03-13 16:28:14

标签: jquery html text-capture

我有一个id为“stage”的div。在这个div中有文本输入和其他任何可能放在那里的东西。

当用户点击按钮时,我想在舞台div中获取html并将其保存在某处。我注意到的问题是我在更改后在屏幕上显示TextInput后没有得到当前的HTML。

问题是我永远不知道这个阶段div会是什么。它可以是任意数量的东西,大多数时候包含用户可以输入文本的表单元素。

例如,如果阶段包含

<input type='text' value="Test Content">

当它被创建,然后用户将输入的值更改为“我的测试内容”时,我希望jQuery html()得到

<input type='text' value="My Test Content"> 

点击按钮。

如何做到这一点?

感谢您的帮助!

2 个答案:

答案 0 :(得分:4)

仅使用.html() 会更改input的值。它将继续使用初始值:<input type='text' value="Test Content">。我建议使用.each().val()

JAVASCRIPT:

$(document).ready(function(){
    $('#b1').click(function(){
        $('#stage input').each(function(){
           $('#stage input').attr('value', $(this).val());
        });
        $('#results').html($('#stage').html());
    });
});

样本: http://jsfiddle.net/dirtyd77/Yctwk/5/

答案 1 :(得分:0)

如果您知道buttonID,则可以执行以下操作:

var divHtml; 

$("#buttonID").click(function() {
    divHtml = ("#stage").html();
});

当您点击ID为“buttonID”的按钮时,这会将ID为“stage”的div内的所有HTML分配给变量divHtml