Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 应用文本区域时出现类型错误';将s值转换为变量_Javascript - Fatal编程技术网

Javascript 应用文本区域时出现类型错误';将s值转换为变量

Javascript 应用文本区域时出现类型错误';将s值转换为变量,javascript,Javascript,JavaScript var textarea = document.getElementById("textarea").value; HTML <textarea id="textarea" cols="100" rows="10">du hello!</textarea> 你好! 如果您使用的是所见即所得编辑器,如tinymce或其他。 document.getElementById(“textarea”).value;他们有自己的方法来获取数据,这是行不通的

JavaScript

var textarea = document.getElementById("textarea").value;
HTML

<textarea id="textarea" cols="100" rows="10">du hello!</textarea>
你好!
如果您使用的是所见即所得编辑器,如tinymce或其他。 document.getElementById(“textarea”).value;他们有自己的方法来获取数据,这是行不通的

<script type="text/javascript">
  function test(name){
    var textarea = document.getElementById("textarea").value;
    alert(textarea)
  }
</script>

<textarea id="textarea" cols="100" rows="10">du hello!</textarea>
<a href="javascript:void(0)" onclick="javascript:test('this is just testing')">Test TextArea</a>

功能测试(名称){
var textarea=document.getElementById(“textarea”).value;
警报(文本区域)
}
杜:你好!
TypeError:document.getElementById(“textarea”)表达式的结果[null]不是对象

此错误表示找不到id为“textarea”的元素。因此,此
getElementById
操作的结果是
null
,您无法访问
null
上的
值,因为它没有任何属性

其根本原因是在搜索时不存在id为“textarea”的元素。您可能在某个地方输入了一个错误,或者您的脚本正在运行,而此时该元素还不存在。如果您的脚本位于标题中,您将希望这样编写:

document.ready = function () {
    ... script here ...
}

这将延迟执行,直到文档准备就绪且所有元素都存在。

您应该真正说出您得到的确切错误…对我有效。。。你在用什么浏览器?@Kip我在Safari上运行它,@sth它给了我一个错误:“TypeError:表达式'document.getElementById(“textarea”)'[null]的结果不是一个对象。”我的意思是说文本编辑器。除此之外,您还可以检查是否应该有一个id=“textarea”的标签。您可以检查您的浏览器,请在编辑后参考我的答案。我检查了所有内容,打字不是问题。我试着把
document.ready=(){/*和我的脚本放在头部*/}
,调试后没有出现任何错误,但它仍然没有提醒textarea的值。我将脚本放在
中并开始工作。
.ready
jQuery不是特定的吗?我正在制作一个简单的web应用程序,我不想使用任何JS框架。@Espresso否,
document.ready
不是特定于jQuery的,但可能是特定于浏览器的。您也可以尝试
window.onload
。你需要发布更多的代码,我认为显而易见的陷阱现在已经被清除了。