JS
var menuBtn = document.getElementsByClassName('btn-block');
var lenOfMenuBtn = menuBtn.length;
for (var i = 0; i < lenOfMenuBtn; i++) {
menuBtn[i].addEventListener('click',addMenu,false);
}
function addMenu() {
addOkFlag();
//addToCart();
//removeOkFlag();
}
function addOkFlag() {
var elmnt = document.createElement('i');
elmnt.setAttribute('class','glyphicon glyphicon-ok');
this.appendChild(elmnt);
}
错误是&#34; this.appendChild不是函数&#34;。我想在用户单击按钮时调用多个函数,因此我调用第一个函数,我想在其中添加<i>
标记,但我不知道如何从addEventListener传递当前节点以附加此子节点。
答案 0 :(得分:0)
您可以将点击的元素传递给函数
var menuBtn = document.getElementsByClassName('btn-block') ;
var lenOfMenuBtn = menuBtn.length ;
for (var i = 0; i < lenOfMenuBtn; i++) {
menuBtn[i].addEventListener('click',addMenu,false) ;
}
function addMenu(e) {
addOkFlag(e.target) ;
// or addOkFlag(this);
}
function addOkFlag(el) {
var elmnt = document.createElement('i');
elmnt.setAttribute('class','glyphicon glyphicon-ok');
el.appendChild(elmnt);
}
答案 1 :(得分:-1)
无论你想要追加什么,给它一个id属性,然后......
document.getElementsByClassName('myElementsId').appendChild(elmnt);
..将“myElementsId”替换为您的元素ID