JavaScript Multiplication Game -


i supposed make simple program. produces multiplication problem, , when user types correct answer, supposed produce question. instead goes infinite loop , never stops, answer field , button go away. also, supposed make comment users answer, 1 of 4 different sayings. without using arrays how that?

my professor no help, getting aggravated have no else turn.

<html>     <title>hw 9.27 , 9.28</title>     <head>         <script type="text/javascript">             var number1;             var number2;             var answer3;             var answer2;              function problem() {                 number1 = math.floor(1 + math.random() * 9);                 number2 = math.floor(1 + math.random() * 9);                 document.writeln("how " + number1 + " times " + number2 + " ?");                 answer2 = (number1 * number2);             }              function answer1() {                 var statusdiv = document.getelementbyid("status");                 answer3 = document.getelementbyid("answer").value;                  if (answer3 != answer2) statusdiv.innerhtml = "no. please try again";                 else if (answer3 == answer2) {                     statusdiv.innerhtml = "very good!";                     problem();                 }             }             problem();          </script>     </head>     <body>         <form>             <input id="answer" type="text" />             <input type="button" value="solve!" onclick="answer1()" />             <div id ="status">click solve button solve problem</div>         </form>     </body> </html> 

simply put, document.writeln("how " + number1 + " times " + number2 + " ?"); erases content on writes string. you're loosing form inputs.

the reason doesn't happen on initial page load because call document.writeln happens before form elements load.

try this:

<html> <title>hw 9.27 , 9.28</title> <head> <script type="text/javascript"> var number1; var number2; var answer3; var answer2;  function problem() { number1 = math.floor( 1 + math.random() * 9 ); number2 = math.floor( 1 + math.random() * 9 ); document.getelementbyid("prompt").innerhtml = "how " + number1 + " times " +     number2 + " ?"; answer2 = (number1*number2); }  function answer1() { var statusdiv = document.getelementbyid("status"); answer3=document.getelementbyid("answer").value;  if(answer3 != answer2) statusdiv.innerhtml="no. please try again"; else if (answer3==answer2) { statusdiv.innerhtml="very good!"; problem(); }}   </script> </head> <body onload="problem();"> <form> <div id ="prompt"></div> <input id="answer" type="text" /> <input type="button" value="solve!" onclick="answer1()" /> <div id ="status">click solve button solve problem</div> </form> </body> </html> 

Comments

Popular posts from this blog

apache - Add omitted ? to URLs -

redirect - bbPress Forum - rewrite to wwww.mysite prohibits login -

php - How can I stop spam on my custom forum/blog? -