我有一个html表,正在我在jquery查找中使用的网页上呈现,以将值插入textarea。
呈现的表格具有<td>
s,其数据类似
<td class="ms-vb"><p>Hello. </p><p> line2</p>
和
<div>1</div><div>2</div><div>3</div>
在页面上显示如下。
Hello
line 2
和
1
2
3
我正在使用一些jquery来拉取hmtl表的数据并将其插入到textarea文本框中..但是当我这样做时,我只看到一长串没有html标签的文本,当然也没有换行符。
将这些数据插入到我的textearea字段中是什么样的jquery或javascript方法,至少在textarea中保留了换行符?
所以基本上我需要一个可以转动这个字符串的函数
在jquery或javascript中以任何形式表示html数据,以便至少在我的多行文本区域中保留换行符?
===这里的完整代码..基本上在我的页面上查找某些表并使用它来插入两个textxbox中的值:
<script type="text/javascript">
$('select[title$=Issue Type] option:eq(0)').text("Please Select").val("");
$('select[title$=Issue Type]').change(function(){
var issue = $('select[title$=Issue Type] :selected').text();
var bodyprefixes = [];
$('#issuetbl td:contains('+issue+')').nextAll().each(function(i, k) {
bodyprefixes.push($(k).text());
});
$('input[title$=Subject]').val(bodyprefixes[1]);
$('input[title$=Message]').val(bodyprefixes[0]);
});
</script>
答案 0 :(得分:1)
尝试使用正则表达式。如果要支持其他标记,则必须将它们包含在正则表达式中。这里的人也支持:
$('#txtarea').text(
$('td.ms-vb').text()
.replace(/<\/?(br|div|p)\/?>/g, "\n\n")
.replace(/<[^>]+>/g, "")
);
注意:您可能需要从输出中修剪四倍'\ n'。
答案 1 :(得分:0)
类似的东西:
var textAreaInput = '';
var getTextFromElement = function() {
textAreaInput += $(this).text() + '\n';
};
$('p').each(getTextFromElement);
$('div').each(getTextFromElement);