Free Commercial
Free Commercial

Reputation: 13

HTML code not working

My html code below is supposed to call 3 random words from a list but it isn't

<html>
<body>
        <div id="placeholder"></div>
        <input id="clickMe" type="button" value="Generate!" onclick="generator();" />

        <script>
        function generator(){
  var begin = ["Example1","Example2"]
  var middle = ["moreexamples","moreandmore"]
  var end = ["moremoremore","evenmoreman"]

  // Random numbers are made
  var randomNumber1 = parseInt(Math.random() * begin.length);
  var randomNumber2 = parseInt(Math.random() * middle.length);
  var randomNumber3 = parseInt(Math.random() * end.length);
  var name = begin[randomNumber1] + "" + middle[randomNumber2] + "" + end[randomnumber3];           

  //If there's already a name it is removed
  if(document.getElementById("result")){
    document.getElementById("placeholder").removeChild(document.getElementById("result"));
  }
  var element = document.createElement("div");
  element.setAttribute("id", "result");
  element.appendChild(document.createTextNode(name));
  document.getElementById("placeholder").appendChild(element);
}

        </script>
        <script>
        if(document.getElementById("result")){
  document.getElementById("placeholder").removeChild(document.getElementById("result"));
}

element = document.createElement("div");
element.setAttribute("id", "result");
element.appendChild(document.createTextNode(name));
document.getElementById("placeholder").appendChild(element);
</script>
        </div>

</body>
</html>

If someone knows what's wrong please tell me how to fix it. :) BTW this is all just one page I'll decorate it later.

Upvotes: 0

Views: 83

Answers (1)

Mathew Thompson
Mathew Thompson

Reputation: 56429

That's because your randomNumber3 variable is referenced incorrectly as randomnumber3.

Declaration: var randomNumber3 = parseInt(Math.random() * end.length);

Usage: var name = begin[randomNumber1] + "" + middle[randomNumber2] + "" + end[randomnumber3];

Check out the Fiddle here

Upvotes: 3

Related Questions