[英]Javascript generate many DOM elements with onclick attribute
我有以下腳本:
var div = document.getElementById("ShowAndHide");
var colbutton = document.createElement("a");
var linkText = document.createTextNode("Show/Hide column");
colbutton.appendChild(linkText);
colbutton.setAttribute("href", "javascript:void(0)");
jQuery.each(data.aoColumns, function(i, value){
colbutton.onclick = function(){
fnShowHide(i);
}
div.appendChild(colbutton);
});
function fnShowHide( iCol ){
var bVis = oTable.fnSettings().aoColumns[iCol].bVisible;
oTable.fnSetColumnVis( iCol, bVis ? false : true );
}
基本上,我需要創建許多具有明顯不同屬性的DOM元素。 我沒有發現任何有用的信息,所以我決定在這里詢問。 謝謝!
我已經看到您已經在使用jQuery。 所以這是一個jQuery解決方案:
var $div = $("#ShowAndHide");
var $colbutton = $("<a href='javascript:void(0)'>Show/Hide column</a>");
$.each(data.aoColumns, function(i) {
$colbutton.clone()
.on('click', fnShowHide.bind(window, i))
.appendTo($div);
});
function fnShowHide( iCol ){
var bVis = oTable.fnSettings().aoColumns[iCol].bVisible;
oTable.fnSetColumnVis( iCol, bVis ? false : true );
}
這是一個工作的jsFiddle演示
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.