javascript - getElementById 未获取文本区域内容

标签 javascript getelementbyid

对于了解的人来说,这可能看起来很简单:单击按钮时,此脚本会获取 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/有关如何执行此操作的示例。

关于javascript - getElementById 未获取文本区域内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10475417/

相关文章:

javascript - 为什么在定时提示后不打印变量 "nyFrukt"

javascript - 如何在 JavaScript 中选择某个元素的最后一个

javascript - 我是一个 javascript 初学者,我无法让这段代码在浏览器上运行

javascript ElementById 说明

选项转换器的 Javascript 改进

javascript - 类型错误 : Cannot set property '0' of undefined

javascript - AngularJS:如何避免匿名 promise 处理程序

javascript - 如何选择在 Angular 中动态加载的 html 元素?

javascript - 即使元素存在,getElementById() 也会返回 null

javascript - 如何从输入框中提取文本并将它们添加到底部的 div