Javascript根本不存储变量。每个变量“未定义”
我想知道是否有人能帮我。问题是javascript没有存储任何变量,并且正在运行Javascript根本不存储变量。每个变量“未定义”,javascript,variables,undefined,Javascript,Variables,Undefined,我想知道是否有人能帮我。问题是javascript没有存储任何变量,并且正在运行 <script type="text/javascript" language="javascript"> var name = document.getElementById('text_field').value; var test = "foobar"; function test_function(){ alert("hello"+test); } alert('test '+
<script type="text/javascript" language="javascript">
var name = document.getElementById('text_field').value;
var test = "foobar";
function test_function(){
alert("hello"+test);
}
alert('test '+test);
</script>
第二个警报根本不会发生,当我点击按钮触发test_函数时,它会发出HelloundDefined警报。
我只是不知道该怎么办,它工作正常,然后突然停止了。我应该提到,这是在php页面上,但这不会有什么区别。如果没有ID text\u字段的元素,其余的代码将不会运行。如果没有ID text\u字段的元素,其余的代码将不会运行。尝试更改:
var name = document.getElementById('text_field').value;
到
或
尝试更改:
var name = document.getElementById('text_field').value;
到
或
在看不到代码的其余部分的情况下,最有可能的罪魁祸首是这一行:
var name = document.getElementById('text_field').value;
如果脚本块在“text_field”存在之前运行,则会出现错误,其余的javascript不会执行。结果是您看不到警报,并且从未设置测试变量。您需要在DOM存在后调用代码,可以在onload或jQuery中的ready函数中运行代码,也可以将脚本块放在页面末尾。在看不到其余代码的情况下,最有可能的原因是这行代码:
var name = document.getElementById('text_field').value;
如果脚本块在“text_field”存在之前运行,则会出现错误,其余的javascript不会执行。结果是您看不到警报,并且从未设置测试变量。您需要在DOM存在后调用代码,方法是在onload或jQuery中的ready函数中运行代码,或者将脚本块放在页面末尾。将该脚本块移动到页面底部。文本_字段尚不存在。如果您正在浏览器中调试,请使用Chrome或Firefox,并使用dev工具栏中的Console窗口。它会告诉您这样的事情…将脚本块移动到页面底部。文本_字段尚不存在。如果您正在浏览器中调试,请使用Chrome或Firefox,并使用dev工具栏中的Console窗口。它会告诉你这样的事情…你的脚本在正文部分的最底部吗?我打赌这会解决你的问题。你的剧本在正文的最下面吗?我打赌这会解决你的问题。要清楚,如果脚本抛出异常,其余的将不会运行,缺少ID text_字段的元素将抛出异常。要清楚,如果脚本抛出异常,其余的将不会运行,缺少ID text_字段的元素将抛出异常