2016-08-21 3 views
0

ich eine dynamische Schaltfläche erstellt haben, wenn diese Schaltfläche geklickt wird es eine Javascript-Funktion mit einer Argumente aufrufen, sondern die anderen Linien während dieses Prozesses übersprungenJava-Script-Funktion wird aufgerufen, wenn ich Argumente übergeben

function mainradio() { 
var dyndiv = document.createElement("div"); 
dyndiv.id = "div_temp"; 


var dynradiogroup = document.createElement("label"); 
dynradiogroup.name="rdlbl"; 
dynradiogroup.className="rdmainclass"; 
dynradiogroup.innerHTML="Please enter your question"; 

var nextradio = document.createElement("input"); 
nextradio.type="button"; 
nextradio.id="nxtbtnid"; 
nextradio.name="nxtbtnnme"; 
nextradio.value="Add more button"; 
nextradio.onclick =createRadio(dyndiv.id); 

dyndiv.appendChild(dynradiogroup); 
dyndiv.appendChild(nextradio); 
document.getElementById("dynElements").appendChild(dyndiv); 
} 

erhalten die dynamisch erstelltes Label und Button sind nicht an das div angehängt, das auch dynamisch erstellt wurde dyndiv.appendChild (dynradiogroup); dyndiv.appendChild (nextradio); document.getElementById ("dynElements"). AppendChild (dyndiv); Funktion wird aufgerufen, bevor diese 3 Anweisungen ausgeführt werden.

+0

'createRadio (dyndiv.id);' ruft die Funktion. – ASDFGerte

+0

Ja, ich weiß, das ruft die Funktion, die das Problem ist, gibt es eine andere Möglichkeit, Argument an diese Funktion übergeben – manikandan

Antwort

0

Verwenden nextradio.onclick = createRadio.bind(this, dyndiv.id); oder nextradio.onclick =() => { createRadio(dyndiv.id); };

+0

Vielen Dank. das funktioniert :) – manikandan

Verwandte Themen