为什么我的这段JavaScript代码无法运行?

<!DOCTYPE html>
<head>
    <meta charset='utf-8'>
    <title>中医九种体质评测</title>
    
</head>
<body>

    <form action='adjustHealth.php'  method='GET'>
        
    <script> 
    var questionNumber=1;
    var questionArray=new Array(' 您是否因为天气的变化而感到郁郁寡欢?','您是否经常感到身体莫名奇妙的疼痛','您是否常常需要叹一口气才感到舒服','您是否经常莫名其妙的感到烦恼','您是否一年四季手脚冰凉');
    var answerArray=new Array();
    var questionContent=document.getElementById('questionContent');
    var nextQuestionButton=document.getElementById('nextQuestionButton');
    var lastQuestionButton=document.getElementById('lastQuestionButton');
    var customAnswer=document.getElementById('answer');
    var i=1
    function nextQuestionButton(){
        questionContent.innerHTML=questionArry[i]+'?';
        answerArray[i-1]=customAnswer.value;
        i++
        if(i>1){
            lastQuestionButton.style='visibility:visible';
        }else{
            lastQuestionButton.style='visibility:hidden';
        };
        if(i==4){
            lastQuestionButton.type='submit';
        }else{
            lastQuestionButton.type='button';
        }
    }


    </script>
        <span id='questionContent'>您是否因为天气的变化而感到郁郁寡欢?</span><br>
        <input type='radio' id='answer' name='question' value='nothing'>从来不<br>
        <input type='radio' id='answer' name='question' value='light'>稍微<br>
        <input type='radio' id='answer' name='question' value='often'>经常<br>
        <input type='radio' id='answer' name='question' value=‘always’>总是<br>
        <input type='button' id='nextQuestionBUtton' name='gofoward' value='下一问' style='visibility:visible' onclick='nextQuestionButton()'>
        <input type='button'  id='lastQuestionButton'  name='goback' value='上一问' style='visibility:hidden'>
    </form>
</body>
</html>

<!DOCTYPE html>
<head>
    <meta charset='utf-8'>
    <title>中医九种体质评测</title>
    
</head>
<body>
 
    <form action='adjustHealth.php'  method='GET'>
        <span id='questionContent'>您是否因为天气的变化而感到郁郁寡欢?</span><br>
        <input type='radio' id='answer' name='question' value='nothing'>从来不<br>
        <input type='radio' id='answer' name='question' value='light'>稍微<br>
        <input type='radio' id='answer' name='question' value='often'>经常<br>
        <input type='radio' id='answer' name='question' value=‘always’>总是<br>
        <input type='button' id='nextQuestionBUttonId' name='gofoward' value='下一问' style='visibility:visible' onclick='nextQuestionButton()'>
        <input type='button'  id='lastQuestionButton'  name='goback' value='上一问' style='visibility:hidden'>
    </form>
        
    <script> 
    var questionNumber=1;
    var questionArray=new Array(' 您是否因为天气的变化而感到郁郁寡欢?','您是否经常感到身体莫名奇妙的疼痛','您是否常常需要叹一口气才感到舒服','您是否经常莫名其妙的感到烦恼','您是否一年四季手脚冰凉');
    var answerArray=new Array();
    var questionContent=document.getElementById('questionContent');
    var nextQuestionBUttonId=document.getElementById('nextQuestionBUttonId');
    var lastQuestionButton=document.getElementById('lastQuestionButton');
    var customAnswer=document.getElementById('answer');
    var i=1
    function nextQuestionButton(){
        questionContent.innerHTML=questionArray[i]+'?';
        answerArray[i-1]=customAnswer.value;
        i++
        if(i>1){
            lastQuestionButton.style='visibility:visible';
        }else{
            lastQuestionButton.style='visibility:hidden';
        };
        if(i==4){
            lastQuestionButton.type='submit';
        }else{
            lastQuestionButton.type='button';
        }
    }
 
 
    </script>
</body>
</html>

变量和方法都叫nextQuestionButton,冲突了。把方法名改一下就可以执行。

<!DOCTYPE html>

<head>

    <meta charset='utf-8'>

    <title>中医九种体质评测</title>

    

</head>

<body>

 

    <form action='adjustHealth.php'  method='GET'>

        

    <script> 

    var questionNumber=1;

    var questionArray=new Array(' 您是否因为天气的变化而感到郁郁寡欢?','您是否经常感到身体莫名奇妙的疼痛','您是否常常需要叹一口气才感到舒服','您是否经常莫名其妙的感到烦恼','您是否一年四季手脚冰凉');

    var answerArray=new Array();

    var questionContent=document.getElementById('questionContent');

    var nextQuestionButton=document.getElementById('nextQuestionButton');

    var lastQuestionButton=document.getElementById('lastQuestionButton');

    var customAnswer=document.getElementById('answer');

    var i=1

    function nextQuestionButtonFunc(){

        questionContent.innerHTML=questionArry[i]+'?';

        answerArray[i-1]=customAnswer.value;

        i++

        if(i>1){

            lastQuestionButton.style='visibility:visible';

        }else{

            lastQuestionButton.style='visibility:hidden';

        };

        if(i==4){

            lastQuestionButton.type='submit';

        }else{

            lastQuestionButton.type='button';

        }

    }

 

 

    </script>

        <span id='questionContent'>您是否因为天气的变化而感到郁郁寡欢?</span><br>

        <input type='radio' id='answer' name='question' value='nothing'>从来不<br>

        <input type='radio' id='answer' name='question' value='light'>稍微<br>

        <input type='radio' id='answer' name='question' value='often'>经常<br>

        <input type='radio' id='answer' name='question' value=‘always’>总是<br>

        <input type='button' id='nextQuestionBUtton' name='gofoward' value='下一问' style='visibility:visible' onclick='nextQuestionButtonFunc()'>

        <input type='button'  id='lastQuestionButton'  name='goback' value='上一问' style='visibility:hidden'>

    </form>

</body>

</html>

谢谢指点,但为什么后面的数组还是无法执行?

我改了哦,也不行。程序员是否直接用表单提交给php处理,不会这样用javascript处理?我想这些页面上的变量除了表单中的,可能也没有办法传递给后台吧?

把script标签放到form后面

谢谢哦,我还是选择使用php算了,发现这些js储存的变量也无法传递到后台去。看来做问卷表只能一个个form提交到后台的php去执行了。只是真心感觉太慢了。谢谢!