我正在尝试在javascript中模拟一个类,我想通过一个事件调用我已经在同一个文档中设置的函数,我onclick
有以下内容:
function clase(){
// Consultar
this.consultar = function() {
$.ajax({
type: 'POST',
url: 'url',
dataType: 'html',
data: { consulta: query },
beforeSend:function(){
},
success:function(response){
// omito lo anterior por que hasta acá esta todo bien
// el problema lo tengo al momento de hacer llamar la función
var datos = JSON.parse(response);
// datatable
var idTabla = $('#tabla').DataTable({
lengthMenu:[[5,10],[5,10]]
});
// limpio el datatable
idTabla.row().clear();
for (var i = 0; i < datos.length ; i++) {
// inserto los datos en el datatable
idTabla.row.add([
datos[i].documento,
datos[i].nombre+" "+datos[i].apellidos,
datos[i].correo,
datos[i].telefono,
datos[i].email,
// creo una etiqueta <a></a> y en este llamo un evento "onclick" en el cual deseo llamar la otra funcion
'<a href="#" class="on-primary edit-row" onclick=\' this.estado("'+datos[i].id+'", "'+datos[i].estado+'"); \'><i id="'+datos[i].id+'"class="fa fa-check" aria-hidden="true"></i></a>'
]);
}
idTabla.draw(true);
}
});
}
this.estado = function(id, estado){
$.ajax({
type: 'POST',
url: "url",
dataType:"html",
async: true,
data: {
id:id,
ingresoNuevo: 3,
estado: estado
},
beforeSend:function(){
$("#"+id).removeClass().addClass( "fa fa-refresh fa-spin" );
},
success:function(response){
// llamo la función de consulta para volver a mostrar la tabla esta ves con el estado actualizado
this.consultar();
}
});
}
}
应该注意的是缺少一些数据,但我省略了它,因为我认为它与问题无关,因为我正在寻找的是知道如何estado
在 `onclick 事件中调用该函数。
内联方法是:
使用 jQuery 事件处理并假设所有内容都已定义:
您可以使用的另一种方法是将其存储在变量中:
当你需要它时:
即使这样,您也可以制作“类型” Singlenton,但这完全取决于您想要做什么。