Home > Blockchain >  Issue with updating innerHMTL with javascript prompt on load
Issue with updating innerHMTL with javascript prompt on load

Time:07-22

I'm attempting to update the tag with id = "content" with prompted info. For some reason the window.onload function isn't working. I've tried moving the around to no success. Apparently the div is null but i'm not sure how to remedy this. Thanks!

<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Exercise 3</title>
        <meta charset="UTF-8">
    </head>
    <body>
        <p><strong>User Information:</strong></p>
        <div id=”content”>...</div>



        <script type="text/javascript">
            
            function promptFunc() {
                let text; 
                let name = prompt("What is your full name?", "Name");
                let age = prompt("How old are you?", "Age");
                if (name == null || age == null || name == "" || age ==""){
                  text = "User did not enter information";
                }else {
                    text = "Hi, my name is " name " and i'm " age " years old.";
                }
                document.getElementById("content").innerHTML = text;
            }

            window.onload=function(){
                promptFunc();
            }
            
        </script>
    </body>

</html>

CodePudding user response:

<!DOCTYPE html>
<html lang="en">

<head>
    <title>Exercise 3</title>
    <meta charset="UTF-8">
</head>

<body>
    <p><strong>User Information:</strong></p>
    <div id="content">...</div>

    <script type="text/javascript">
        function promptFunc() {
            let text;
            let name = prompt("What is your full name?", "Name");
            let age = prompt("How old are you?", "Age");
            if (name == null || age == null || name == "" || age == "") {
                text = "User did not enter information";
            } else {
                text = "Hi, my name is "   name   " and i'm "   age   " years old.";
            }
            document.getElementById("content").innerHTML = text;
        }

        window.onload = function() {
            promptFunc();
        }
    </script>
</body>

</html>

Use the double quotation("") in id="content"

CodePudding user response:

Your Code has a mistake in ”content” quotes. you have given the wrong quotes in div id="content">

<!DOCTYPE html>
<html lang="en">
    <head>
        <title>Exercise 3</title>
        <meta charset="UTF-8">
    </head>
    <body>
        <p><strong>User Information:</strong></p>
        <div id="content">...</div>



        <script type="text/javascript">
            
            function promptFunc() {
                let text; 
                let name = prompt("What is your full name?", "Name");
                let age = prompt("How old are you?", "Age");
                if (name == null || age == null || name == "" || age ==""){
                  text = "User did not enter information";
                }else {
                    text = `Hi, my name is ${name} and i'm ${age} years old.`;
                }
                document.getElementById("content").innerHTML = text;
            }

             window.onload=function(){
                promptFunc();
            }
        </script>
    </body>

</html>
  • Related