getElementById 不会获取文本区域内容
getElementById doesn't get textarea content
对于知道的人来说,这似乎很简单:单击按钮时,此脚本会获得一个DIV
标记,并打开包含内容的新页面。但我希望它在用户输入内容后显示textarea
的内容。
有什么想法吗?代码是:
<script type="text/javascript">
var win=null;
function printIt(printThis)
{
win = window.open();
self.focus();
win.document.open();
win.document.write('<'+'html'+'><'+'head'+'><'+'style'+'>');
win.document.write('body, td { font-family: Verdana; font-size: 10pt;}');
win.document.write('<'+'/'+'style'+'><'+'/'+'head'+'><'+'body'+'>');
win.document.write(printThis.innerHTML);
win.document.write('<'+'/'+'body'+'><'+'/'+'html'+'>');
win.document.close();
win.print();
}
</script>
</head><body>
<div id="activity5">
<blockquote>
<table border="0" cellpadding="3">
</table>
<form id="form4" name="form1" method="post" action="">
<textarea name="Activity1a4" cols="80" rows="15" class="s23" id="ta1"></textarea>
<p>
<input name="print4" type="submit" id="print4" value="Print" onclick="printIt(document.getElementById('activity5')); return false"/>
* Retain this learning activity as part of your portfolio of evidence.</p>
<p>Check your findings with the correct answer in the back of this Learner Resource under 'Learning activity answers'.</p>
</form>
</blockquote>
</div>
</body>
您需要
使用 value
属性单独获取文本区域的内容,然后以相同的方式显式设置它。查看 http://jsfiddle.net/EPvWV/以获取有关如何执行此操作的示例。
您可以使用 .value
而不是 .innerHTML
获取文本区域的内容。
这意味着获取 innerHTML activity5
将不包括在子文本区域中键入的文本。 如果要包含该文本,则必须在文本区域上单独检索带有.value
的文本,并将其插入到新页面的新文本区域中。
相关文章:
- 使用 jQuery 从选择标签中抓取文本
- 如何从文本区域获取文本,包括换行符
- 无法在文本区域设置文本
- 使用 casperjs 抓取文本节点的最快方法
- 如何分析 XML 文件和抓取文本值
- 如何使用户能够通过单击按钮从文本区域复制文本
- 从 URL 中抓取文本和媒体
- 使用 jQuery 捕获文本区域的文本值
- 单击按钮时从文本区域下载文本文件
- 在光标位置上拆分文本区域的文本.(asp.net C#)
- 如何从URL中抓取文本并放置在JS数组中
- JS从文本框中抓取文本,传递给asp.net mvc ActionResult,但ActionResult参数显示为nu
- 如何从IE6中的文本区域获取文本
- 如何在事件onclick中抓取文本
- 如何在js中向文本区域添加文本
- 为什么不是't我的javascript函数从文本区域提取文本
- 在单个或多个文本区域和文本框中使用多个插入符号
- 键入时用另一个文本区域更新文本区域
- 如何使用thymeleaf抓取文本区域数据
- 未拉取文本区域输入控件的 JSON 数据