将文本框中的文本打印到屏幕上
Have the text from a text box print to the screen
<html>
<script>
var x= document.getElementById('myText').innerHTML;
function go(){
document.write(x);
}
</script>
<body>
<input type="text" id="myText" size="1" value="" />
<input type="button" id="button" value="button" onclick="go()"/>
</body>
我无法从文本框中获取文本以打印到屏幕上。我也不希望按钮在文本打印到屏幕上时
对正在发生的事情给出一些解释:
在文档加载后使用 document.write(( 会自动调用 document.open((,"如果目标中存在文档,此方法会清除它(参见示例(。
为了解决您的用例,您只需将 textNode 或元素附加到您希望它去的页面中。
<body>
<input type="text" id="myText" size="1" value="" />
<input type="button" id="button" value="button" onclick="go()"/>
</body>
假设此标记,您可以执行类似操作以将其附加到页面末尾。
var myText = document.getElementById('myText');
function go() {
document.body.appendChild(document.createTextNode(myText.value));
}
作为旁注:您应该有一个带有 ID 值的容器(可能是div 元素(,您可以将这些值附加到其中而不是正文中。如果您想将来使用节点,它将为您提供更多控制权。我还敦促您不要使用内联事件侦听器。
你必须
有一个"目标"。如果您没有 - 请即时创建它,例如 SPAN:
function go(){
var sp = document.createElement('span')
sp.innerHTML = document.getElementById('myText').value;
document.documentElement.appendChild(sp);
}
顺便说一句,文本输入元素没有.innerHTML
它们有.value
演示:http://jsfiddle.net/PKFG8/
更新
这个略微更新的功能会在新行上打印每个新输入,这也是为了增加便利性,可以清除用户输入并在每次单击后重新关注它:
function go(){
var txt = document.getElementById('myText');
var sp = document.createElement('div')
sp.innerHTML = txt.value;
document.documentElement.appendChild(sp);
txt.value = '';
txt.focus();
}
演示 2:http://jsfiddle.net/PKFG8/2/
相关文章:
- 将文本区域行/列转换为屏幕 x/y 坐标
- HTML/JS 如何输入文本并使其显示在屏幕上
- 尝试根据屏幕大小预先设置文本
- 使用Html2Canvas的文本区域屏幕截图
- 如何在Windows 7/8中通过单击文本输入来显示屏幕键盘
- 将文本框中的文本打印到屏幕上
- 当屏幕大小为中或小或xs时,文本溢出,会弄乱整个表.不过,它在全屏模式下运行良好
- 如何在CSS中将文本相互对齐并使图像宽度为屏幕
- 如何将变量设置为文本输入,然后使其显示在屏幕上
- 如何在 Javascript 中的 if 语句的弹出屏幕中显示文本
- Javascript 图像滑块将文本发送到屏幕外并显示页脚
- 如果屏幕缩小,请更改
的文本
- 根据屏幕大小调整文本大小
- JS:如何将文本框中的值打印到屏幕上
- 文本不会在屏幕大小调整时调整大小
- 在javascript提示下输入文本后,文本不会显示在屏幕上
- 如何获取文本光标在屏幕上的像素位置
- 如何在文本框出现在屏幕上时设置焦点
- 根据要求,在onDraw()中使用画布设计的文本支持所有屏幕
- 在firefox操作系统中,根据屏幕方向调整文本区域的大小