2016-04-27 9 views
0

Ich versuche Code zu machen, um nach Ihrem Namen zu fragen, der dann sagt: "Hallo, _____, mein Name ist Dolly." Dann erscheinen drei Knöpfe mit Optionen, was man mit Dolly machen kann.Funktion der angehängten untergeordneten Taste

Gibt es eine Möglichkeit, eine Funktion onclick der erzeugten Schaltflächen hinzufügen, um eine Antwort entsprechend zu erstellen? Ich entschuldige mich, wenn es ein bisschen unordentlich und nicht trocken ist, ich bin irgendwie neu hier.

<body> 
    <p id="dolly"></p> 
    <div id="div1"> 
     <h3 id="try" class="enterN">Please enter your name</h3> 
     <input type="text" id="name" value="" placeholder="Please enter your name"> 
     <button id="submit" onclick="yourName()">Enter</button> 
    </div> 

    <script> 
     function yourName() { 
      var x = document.getElementById("name").value; 
      if (x.length != 0) { 
       document.getElementById("dolly").innerHTML = "Hello, " + x + ", My name is Dolly."; 
       var btn = document.createElement("BUTTON"); 
       var t1 = document.createTextNode("Say Hello"); 
       btn.appendChild(t1); 
       document.body.appendChild(btn); 
       var btn = document.createElement("BUTTON"); 
       var t2 = document.createTextNode("Hug Dolly"); 
       btn.appendChild(t2); 
       document.body.appendChild(btn); 
       var btn = document.createElement("BUTTON"); 
       var t3 = document.createTextNode("Kill Dolly"); 
       btn.appendChild(t3); 
       document.body.appendChild(btn); 

       $(document).ready(function(){ 
        $("#div1").remove(); 
       }); 

      } else { 
       document.getElementById("dolly").innerHTML = "Please enter your name."; 
      } 
     } 
    </script> 
</body> 
+0

"Gibt es eine Möglichkeit [dass] ich eine Funktion onclick der erzeugten Tasten hinzufügen kann, um eine Antwort entsprechend zu erstellen?" Sie möchten eine Onclick-Funktion implementieren. Wir können das schaffen. "der erzeugten Tasten". Was bedeutet das? – 8protons

Antwort

1

Hallo Sie Onclick und Ihre Funktion wie diese

passieren Attributsatz kann
var btn = document.createElement("BUTTON"); 
var t1 = document.createTextNode("Say Hello"); 
btn.setAttribute("onclick", "function1()"); 
btn.appendChild(t1); 
document.body.appendChild(btn); 
1

Sie können den erstellten Schaltflächen einen neuen Ereignis-Listener hinzufügen.

btn.addEventListener('click', function() { 
    // do some things 
}); 
1

Sie können die OnClick-Eigenschaft mit Javascript wie folgt festgelegt:

btn.addEventListener('click', function(event) { 
// code to be executed on click 
} 

für jede der Kind-Tasten Sie erstellen.

+0

Ich habe nicht versucht, darauf zu kommen. Ich habe einfach gesagt, was ich zuerst dachte und dann sah ich seine Antwort und erinnerte mich daran, dass die Verwendung von addEventListener besser war als onclick, also habe ich meinen editiert und dann seinen upvoted. – Cameron637

1

die Onclick-Funktion hinzuzufügen, die Sie tun:

btn.onclick = function() {}; 

so für die erste Schaltfläche Sie

tun würde
var btn = document.createElement("BUTTON"); 
btn.onclick = function() {}; 
var t1 = document.createTextNode("Say Hello"); 
btn.appendChild(t1); 
document.body.appendChild(btn);