0

希望简单的问题,

我想要做的是获取我的 div 的内容,包括任何子元素的 html 标签,并将其插入到表单中的隐藏输入中,每次我在另一个输入字段中按下一个键

例如,如果我的 div 是:

<div><p>Hello</p></div>

我想复制过来:

<p>Hello</p>

作为一个字符串

我试过了:

$(document).ready(function(){
    $('#textarea').keyup(function() {
        $('#hidden-input').html($('#div'));
    });
});

唯一的问题是我的隐藏输入的内容包含 div 和 div 的竞争,例如它看起来像这样:

<input type="hidden" id="hidden-input" name="foo" value="bar">
    <div> (DIV CONTENTS) </div>
</input>

我只想要上面的(DIV CONTENTS),没有div。像这样:

<input type="hidden" id="hidden-input" name="foo" value="bar">
    (DIV CONTENTS)
</input> 
4

3 回答 3

2

只需这样做:

 $(document).ready(function(){
     $('#textarea').keyup(function() {
         $('#hidden-input').html($('#div').html());
     });
 });
于 2013-10-24T17:26:28.363 回答
0

</input>是无效的输入结束标记。输入是自封闭的标签,所以没有必要</这样你就可以意识到输入没有 HTML 内容,而是一个value=""

因此我建议你使用隐藏<textarea id="hidden-input"></textarea>元素

$(function(){ // DOM ready 
    $('#textarea').keyup(function() {
        var copy = $('#div').html();
        $('#hidden-input').html( copy );
    });
});


从你的问题我不明白的是:

每次我在另一个输入字段中按下一个键

in 你有多个输入字段,而不是使用IDin$('#textarea').keyup(
而是一个通用的 className。

这是您所要求的演示(或至少您是如何解释的)

现场演示

这根本没有意义,

所以我建议你重新制定你的问题。

于 2013-10-24T17:30:57.997 回答
-1

问题不合逻辑。我们可以给输入字段一个值,并且 val 函数用于此

val():此方法通常用于设置表单字段的值。 http://api.jquery.com/val/

$(document).ready(function(){
    $('#textarea').keyup(function() {
        $('#hidden-input').val($('div').html());
    })
});
于 2013-10-24T17:27:53.783 回答