Javascript函数返回未定义的?

Javascript函数返回未定义的?,javascript,function,undefined,Javascript,Function,Undefined,我正在做一项作业,我必须用javascript将文本打印到文本框区域。允许用户输入他们想要的内容作为文本的“对象”和“目的地”。这个方法以前在没有文本框的情况下是有效的,但是现在我添加了文本框,我发现了无数的错误。在chrome的控制台中查看时,我不断收到一个错误,说“newVerse()”未定义,尽管它明确定义为一个函数。任何帮助都将不胜感激 <html> <head> <script LANGUAGE="JavaScript"> fun

我正在做一项作业,我必须用javascript将文本打印到文本框区域。允许用户输入他们想要的内容作为文本的“对象”和“目的地”。这个方法以前在没有文本框的情况下是有效的,但是现在我添加了文本框,我发现了无数的错误。在chrome的控制台中查看时,我不断收到一个错误,说“newVerse()”未定义,尽管它明确定义为一个函数。任何帮助都将不胜感激

<html>
<head>
    <script LANGUAGE="JavaScript">
      function newVerse()
      {

        var objects = document.getElementById('objectsID').value
        var destination = document.getElementById('destinationID').value

        var result = "Where have all the " + objects + " gone? <br /> + Long time passing. <br /> + Where have all the " + objects + " gone? <br /> + Long time ago. <br /> + Where have all the " + objects + " gone? <br /> + Gone to " + destination + ", everyone. <br /> + When will they ever learn? <br /> + When will they ever learn? <br />";

        result = document.getElementById('textboxid').value

      }
    </script>
</head>
<body>
<form>
<b>Objects Input</b>: <input TYPE="text" NAME="objects1" ID="objectsID" SIZE="20" />
<p>
<b>Destination Input</b>: <input TYPE="text" NAME="destination1" ID="destinationID" SIZE="20" />
<p>
<input TYPE="button" VALUE="Print Verse" onClick="newVerse()" />
<p>
<textarea id="textboxid" rows=10 cols=50>

</textarea>
</form>
</body>
</html>

函数newVerse()
{
var objects=document.getElementById('objectsID').value
var destination=document.getElementById('destinationID')。值
var result=“所有的“+对象+”都去了哪里?
+很长时间过去了。
+所有的“+对象+”都去了哪里?
+很久以前。
+所有的“+对象+”都去了哪里?
+每个人都去了“+目的地+”。
+他们什么时候才能学会?
+他们什么时候才能学会?
”; 结果=document.getElementById('textboxid')。值 } 对象输入: 目的地输入:
以下是工作代码:

<html>
<head>
</head>
<body>
    <form>
        <b>Objects Input</b>: <input type="text" name="objects1" id="objectsID" size="20" />
        <p>
        <b>Destination Input</b>: <input type="text" name="destination1" id="destinationID"       size="20" />
        <p>
        <input type="button" value="Print Verse" onclick="newVerse()" />
        <p>
        <textarea id="textboxid" rows=10 cols=50></textarea>
    </form>

<script language="JavaScript">
    function newVerse() {

        var objects = document.getElementById('objectsID').value;
        var destination = document.getElementById('destinationID').value;

        var result = "Where have all the " + objects + " gone? <br /> + Long time passing. <br />   + Where have all the " + objects + " gone? <br /> + Long time ago. <br /> + Where have all the " + objects + " gone? <br /> + Gone to " + destination + ", everyone. <br /> + When will they ever learn? <br /> + When will they ever learn? <br />";

        document.getElementById('textboxid').value = result;

    }
</script>
最后一件事,按照我自己制定的规则:如果你没有在html文档中引用javascript代码(作为一个单独的文件),那么就不要在头部键入javascript代码;把它放在身体的末端(就像我现在做的那样)。这样可以确保javascript能够访问所有DOM元素,因为它们在脚本本身之前呈现

最后一件事,尝试遵循xhtml标准,如在必要时始终使用结束标记:

<b>something bold</b> and <p>This is a paragraph</p>
粗体的东西,这是一段


看起来您得到了
result=document.getElementById('textboxid').valu
backward“我一直收到一个错误,说“newVerse()”未定义,即使它明确定义为一个函数”-是的,
newVerse
被定义为一个函数,调用它(
newVerse()
)不会返回任何内容,因此,
未定义
。看起来有人需要学习JavaScript的基础知识syntax@Bergi:他使用的是
onclick
属性,因此返回值无论如何都不会被使用。我没有发现任何问题,我切换了newVerse函数的最后两行,结果如下
<b>something bold</b> and <p>This is a paragraph</p>