我正在使用bootstrap 3并动态创建元素类型为
的按钮<a class="btn btn-primary" data-id="1" data-toggle="modal" data-target=".ver-persona">
<i class="fas fa-search"></i> Ver
</a>
我生成按钮的脚本是:
let boton_elem = $('<a>');
boton_elem.addClass('btn');
for(let clase_btn in botones[boton].clases){
boton_elem.addClass(botones[boton].clases[clase_btn]);
}
for(let data_btn in botones[boton].datas){
boton_elem.data(botones[boton].datas[data_btn][0],botones[boton].datas[data_btn][1]);
}
if(botones[boton].icon !== undefined){
let icon_elem = $('<i>');
for(let clase_icon in botones[boton].icon.clases){
icon_elem.addClass(botones[boton].icon.clases[clase_icon]);
}
icon_elem.appendTo(boton_elem);
}
if(botones[boton].valor.length > 0){
boton_elem.html(boton_elem.html() + ' '+ botones[boton].valor);
}
if(botones[boton].listens !== undefined){
for(let listen in botones[boton].listens){
$('#'+tabla).on(botones[boton].listens[listen].evento,botones[boton].listens[listen].botones[boton].listens[listen].funcion);
}
}
boton_elem.appendTo(columna_elem);
已完美创建按钮,在其中包含了数据,并且所有参数均已正确应用,但是.ver-persona模式无法用生成的按钮打开,所有加载页面的按钮均能正常工作,并且模式可以正常打开。
存在创建按钮时刷新或重新引导引导侦听器的任何方法吗?或建议您打开按钮的某些功能来打开模态?
我做这个小提琴供参考:Live example
谢谢。
答案 0 :(得分:1)
对于动态内容,可以使用jQuery的.attr
添加数据属性。因此,您可以将其改写为boton_elem.data(boton.datas[data_btn][0],boton.datas[data_btn][1]);
而不是boton_elem.attr("data-"+boton.datas[data_btn][0],boton.datas[data_btn][1]);
您可以here对其进行测试