我創建了一個腳本,其中將根據選項的選擇創建輸入欄和按鈕。現在我想單擊按鈕來執行一個功能。下面是我的代碼:點擊功能動態創建按鈕
<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