将div添加到文本区域?

时间:2012-02-10 13:20:34

标签: javascript jquery html

我有一个文本区域,我试图为它添加一个div。我正试图用Jquery这样做......

var text = '<div class="item"><a class="as">q</a>test</div>';
$('#textArea').append(text);

代码运行时没有出现任何错误,但我的文本没有出现在textarea中。为什么会这样?

5 个答案:

答案 0 :(得分:0)

是否要将其添加到HTML结构中或只是将HTML代码显示为文本?
如果要将其添加到textarea HTML结构中,则无效 你要搜索的是什么 $('#textArea').text(text);$('#textArea').text($('#textArea').text()+text);

.text()设置textArea的文本  .html()会设置您的HTML内容

答案 1 :(得分:0)

您无法附加到textarea。它的文本内容与其他输入一样。

var text = '<div class="item"><a class="as">q</a>test</div>';
$('#textArea').val( $('#textArea').val() + text);

答案 2 :(得分:0)

尝试:

$('#textArea').val(text);

答案 3 :(得分:0)

如果您想要渲染div的内容但只想在textarea中显示HTML,则需要先转换HTML:

var lt='&lt;';
var gt='&gt;';
var text = '<div class="item"><a class="as">q</a>test</div>';
text = text.replace(/</gi, lt);
text = text.replace(/>/gi, gt);
$('#textArea').append(text);

文本区域的HTML应如下所示:

<textarea id="textArea"></textarea>

如果您执行想要在textarea中使用div来呈现div的内容:

var text = '<div class="item"><a class="as">q</a>test</div>';
$('#textArea').append(text);

文本区域的HTML与其他示例中的HTML相同:

<textarea id="textArea"></textarea>

答案 4 :(得分:0)

你不能把div放在textarea中,但有时你需要这样做。好消息是,您可以使用元素的 contenteditable 属性以其他方式执行此操作。像

 <div contenteditable="true" style="min-height:50px; width:300px;" id="txtDiv">
 </div>

这个Div的行为与Textarea完全相同,但你可以附加任何你想要的东西。并记住当你想在jquery

中从里面获取数据时
 var ContentofDiv = $('#txtDiv').html();