从div中获取完整的html(包括文本区域内容)



我有一个div'someDiv'。在这个div中我有一个表,在表的单元格中,我有文本区域。

我希望当某个按钮被点击"mybutton"时,整个html(可能因为用户在单元格中放入了一些数据而发生了更改)将被放在一个隐藏字段中。

所有这些-使用Jquery。

当然,我尝试了$('#someDiv').html(),但它给了我原始的html,而不是用户输入的内容。

编辑:这是代码:http://jsfiddle.net/RCQmj/

<div id="interviewSummarySkeleton">
    <table>
        <tr>
            <td>
                <textarea class="title" tabindex="1">title 1:</textarea>
            </td>
            <td>
                <textarea class="content" tabindex="8"></textarea>
            </td>
        </tr>
        <tr>
            <td>
                <textarea class="title" tabindex="2">title 2:</textarea>
            </td>
            <td>
                <textarea class="content" tabindex="9"></textarea>
            </td>
        </tr>
    </table>
</div>
<div id="interviewHtmlHere">PUT HERE THE HTML FROM PREV DIV AFTER USER CHANGED IT</div>

当您点击按钮时,您必须将所有文本区域的文本设置为其值,然后才能获得.html()

$('button').click(function(){ 
    $('#interviewSummarySkeleton textarea').text(function(){
       return this.value; 
    });    
    $('#interviewHtmlHere').text($('#interviewSummarySkeleton').html());
});

FIDDLE

您可以将每个文本区域的innerHTML设置为html()调用之前的值:

http://jsfiddle.net/ZuXwQ/1/

$('button').click(function(){
    $('body').find("textarea").each( function() {
        this.innerHTML = this.value;
    }); 
    console.log($('body').html());
});

在这里,它适用于您的小提琴:http://jsfiddle.net/RCQmj/1/
如果您想将其添加为文本,请再次单击此处:http://jsfiddle.net/RCQmj/2/

在任何一种情况下,我都假设interviewHtmlHere隐藏在您的实际上下文中?

.html()方法将使用jQuery获取任何元素的完整HTML代码。

最新更新