使用jQuery获取带有值的html元素(动态生成)

时间:2013-11-24 18:17:37

标签: javascript jquery html dynamic

是否可以使用jQuery获取带有值的整个div内容(动态生成的元素)?例如,子元素可以是div,span,select或input?

我正在尝试保存整个div内容(在飞行中生成),其值为.html文件。我尝试了一个具有表单和输入元素的div。

HTML:

<div id="inputs">
    <form class="mainForm">
        <div style="height: 100%;" id="div1">
                <label>Input1</label>
                <input type="text" id="input1" name="input1"/>
        </div>
    </form>
</div>
<input id="addform" type="button" value="Click to add Input"/>
<input id="getform" type="button" value="Click to get html"/>

jQuery的:

$(document).ready(function(){
    $("input#addform").click(function(){
        $("div#inputs").append($('form.mainForm').clone().html());
    });

    $("input#getform").click(function(){
        alert($("div#inputs").clone().html());
    });
});

FIDDLE:

http://jsfiddle.net/UhJfn/

如何获取整个div#inputs内容的值(由用户输入)点击Click to get html按钮?

帮助将不胜感激。

P.S:我在表格中只使用了一个输入。但在我的实际情况中,我们确实有选择,跨度,图像等。

1 个答案:

答案 0 :(得分:1)

试试这个,

您必须明确更新value属性才能满足您的需求。

$(document).ready(function(){

    $(document).on('keyup','input[type="text"]',function(){
        $(this).attr('value',$(this).val());
    });

    $("input#addform").click(function(){
        $("div#inputs").append($('form.mainForm').clone().html());
    });

    $("input#getform").click(function(){
        alert($("div#inputs").clone().html());
    });
});

DEMO