我创建了一个脚本,其中将根据选项的选择创建输入栏和按钮。现在我想单击按钮来执行一个功能。下面是我的代码:点击功能动态创建按钮
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="abc">
<option value="1">a</option>
<option value="2">b</option>
<option value="3">c</option>
</select>
<div id="sd"> </div>
功能
$(document).ready(function() {
i=0;
$("#abc").on('change',function() {
var maindiv= document.createElement('div');
maindiv.setAttribute("id","TextBoxesGroup");
var secdiv=document.createElement('div');
secdiv.setAttribute("id","TextBoxDiv1")
maindiv.appendChild(secdiv);
var ipt=document.createElement("input");
ipt.setAttribute("type","text");
ipt.setAttribute("id","textbox1");
secdiv.appendChild(ipt);
var ad=document.createElement("input");
ad.value= "+";
ad.type="button";
ad.style.width="30px";
ad.setAttribute("id","addButton"+i);
ad.onclick=fu_a(this.id);
secdiv.appendChild(ad);
var division= document.getElementById("sd");
division.appendChild(maindiv);
i++;
});
});
function fu_a(id){
alert(id);
}
这里后点击按钮的功能应该得到执行。但实际上它是在更改选项时执行的。这里是我的小提琴:
https://jsfiddle.net/Safoora/ssvjjg6e/16/
'ad.onclick = fu_a(this.id);'应该是'广告.onclick = fu_a.bind(this.id);' – Rajesh
另一个:http://stackoverflow.com/questions/29526556/javascript-onclick-function-is-called-immediately-not-when-clicked – Rajesh
@Satpal谢谢。人们通常不会用upvotes删除答案。感谢您以身作则。 – Rajesh