我知道有很多这样的问题,但似乎没有一个问题可以解决我的问题。我有这段代码无法运行,因为它说Uncaught ReferenceError: run is not defined
。我试图将函数移动到HTML的主体,但无济于事。我的代码:
<!DOCTYPE html>
<html>
<textarea name="Text1" cols="100"rows="20" id="textbox">
</textarea>
<button onclick="run()">Export to C++</button>
<script type="text/javascript">
function run() {
var code=new Array();
var input = document.getElementById("textbox").value;
//convert things that are not subroutines here
code.push(input);
code.push("}");
...
for (var i=0;i<code.length;i++)
{
document.write(code[i]+"<br>");
}
}
</script>
</html>
...
是不相关的代码。
为什么这不起作用?关于如何解决它的任何想法?
由于
答案 0 :(得分:1)
似乎它对我来说很好,但我可以看到问题的唯一原因如下。
您的页面从上到下逐个加载,因此所有脚本将被逐个包含和执行,所有元素也将逐个显示。
事实并非如此,因为您正在点击&#34;&#34;事件并没有初始化操作,因此它应该有效,但您可以尝试将<script></script>
移到顶部(在分配事件之前)。
<!DOCTYPE html>
<html>
<textarea name="Text1" cols="100"rows="20" id="textbox">
</textarea>
<script type="text/javascript">
you script here
</script>
<button onclick="run()">Export to C++</button>
</html>
你也可以替换里面的整个代码
<script></script>
通过类似alert("Hello");
的内容来检查它是否有效。您可能遇到内部代码问题。