我有一个数据表,我在每一行中使用 Jquery 从数据库中获取数据,我有两个按钮,我可以在其中接受或拒绝某些内容,我想知道当我拒绝某些内容时,accepr 按钮消失了,我该怎么办我承认另一个拒绝按钮也会发生同样的情况
public function mostrarTabla(){
if (isset($_GET["perfilOculto"])) {
$item = "idUsuario";
$valor = $_GET["perfilOculto"];
$proyectos = ControladorProyectos::ctrMostrarProyectos($item, $valor);
if(count($proyectos) == 0){
echo '{"data": []}';
return;
}
$datosJson = '{
"data": [ ';
for($i = 0; $i < count($proyectos); $i++){
$item = "id";
$valor = $proyectos[$i]["empleadoAsignado"];
$traerEmpleado = ControladorUsuarios::ctrMostrarEmpleados($item, $valor);
$empleado = $traerEmpleado[0]["nombreEmpleado"] ." ". $traerEmpleado[0]["apellidoEmpleado"];
$dato = $proyectos[$i]["idCliente"];
$clientes = ControladorProyectos::ctrMostrarClientes($dato);
$cliente = $clientes[0]["nombreEmpresa"];
$clienteContacto = $clientes[0]["emailContacto"];
if($proyectos[$i]["aceptado"] == 0){
$colorEstado = "btn-info";
$textoEstado = "Aceptado";
$estadoAceptado = 1;
$colorEstado2 = "btn-danger";
$textoEstado2 = "Cancelado";
$estadoAceptado2 = 2;
$colorEstado3 = "btn-info";
$textoEstado3 = "Pendiente de aceptar";
$estadoTarea = 1;
$estado = "<button class='btn btn-xs aceptado btnAcptado ".$colorEstado." idProyecto='". $proyectos[$i]["id"]."' estadoAceptado='".$estadoAceptado."' estadoBoton='".($i+1)."'>".$textoEstado."</button> ";
$estado2 = "<button class='btn btn-xs rechazado btnRechazado ".$colorEstado2."' idProyecto='". $proyectos[$i]["id"]."' estadoAceptado2='".$estadoAceptado2."'>".$textoEstado2."</button>";
$estado3 = "<button class='btn btn-xs btnEstado ".$colorEstado3."' idProyecto='". $proyectos[$i]["id"]."' estadoTarea='".$estadoTarea."'>".$textoEstado3."</button>";
$botones = "<div class='btn-group'><button class='btn btn-warning btnEditarProyecto' idProyecto='".$proyectos[$i]["id"]."' data-toggle='modal' data-target='#modalEditarProyecto'><i class='fa fa-pencil'></i></button><button class='btn btn-danger btnEliminarProyecto' idProyecto='".$proyectos[$i]["id"]."'><i class='fa fa-times'></i></button></div>";
} else if($proyectos[$i]["aceptado"] == 1){
$colorEstado = "btn-info";
$textoEstado = "Aceptado";
$estadoAceptado = 1;
$colorEstado2 = "invisible";
$textoEstado2 = "Cancelado";
$estadoAceptado2 = 2;
$colorEstado3 = "btn-info";
$textoEstado3 = "En proceso";
$estadoProyecto2 = 1;
$estado2 = "<button class='".$colorEstado2."'></button>";
$estado = "<button class='btn btn-xs aceptado btnAcptado ".$colorEstado."' idProyecto='". $proyectos[$i]["id"]."' estadoAceptado='".$estadoAceptado."'>".$textoEstado."</button> ";
$estado3 = "<button class='btn btn-xs btnEstado ".$colorEstado3."' idProyecto='". $proyectos[$i]["id"]."' estadoProyecto2='".$estadoProyecto2."'>".$textoEstado3."</button>";
$botones = "<div class='btn-group'><button class='btn btn-warning btnEditarProyecto' idProyecto='".$proyectos[$i]["id"]."' data-toggle='modal' data-target='#modalEditarProyecto'><i class='fa fa-pencil'></i></button><button class='btn btn-danger btnEliminarProyecto' idProyecto='".$proyectos[$i]["id"]."'><i class='fa fa-times'></i></button></div>";
} else {
$colorEstado = "invisible";
$textoEstado = "Aceptado";
$estadoAceptado = 1;
$colorEstado2 = "btn-warning";
$textoEstado2 = "Cancelado";
$estadoAceptado2 = 2;
$colorEstado3 = "btn-info";
$textoEstado3 = "Proyecto cancelado";
$estadoProyecto2 = 3;
$estado = "<button class='".$colorEstado."'></button>";
$estado2 = "<button class='btn btn-xsr echazado btnCancelar ".$colorEstado2."' idProyecto='". $proyectos[$i]["id"]."' estadoAceptado2='".$estadoAceptado2."'>".$textoEstado2."</button>";
$estado3 = "<button class='btn btn-xs btnEstado ".$colorEstado3."' idProyecto='". $proyectos[$i]["id"]."' estadoProyecto2='".$estadoProyecto2."'>".$textoEstado3."</button>";
$botones = "<div class='btn-group'><button class='btn btn-warning btnEditarProyecto' idProyecto='".$proyectos[$i]["id"]."' data-toggle='modal' data-target='#modalEditarProyecto'><i class='fa fa-pencil'></i></button><button class='btn btn-danger btnEliminarProyecto' idProyecto='".$proyectos[$i]["id"]."'><i class='fa fa-times'></i></button></div>";
}
$algo = "<div class='btn-group'>";
$finAlgo = "</div>";
$datosJson .= '[
"'.$cliente.'",
"'.$proyectos[$i]["nombreProyecto"].'",
"'.$clienteContacto.'",
"'.$algo.$estado.$finAlgo.$algo.$estado2.$finAlgo.'",
"'.$estado3 .'",
"'.$empleado.'",
"'.$botones.'"
],';
}
$datosJson = substr($datosJson, 0, -1);
$datosJson.= ']
}';
echo $datosJson;
}
}
在 JavaScript 中,我喜欢这样的点击事件
$(document).on("click", ".btnRechazado", function(){
var idProyecto = $(this).attr("idProyecto");
var estadoAceptado2 = $(this).attr("estadoAceptado2");
var estadoProyecto2 = 1;
console.log(estadoAceptado2);
var datos = new FormData();
datos.append("idProyecto", idProyecto);
datos.append("activarProyecto", estadoAceptado2);
datos.append("estadoProyecto2", estadoProyecto2);
$.ajax({
url:"ajax/proyectos.ajax.php",
method: "POST",
data: datos,
cache: false,
contentType: false,
processData: false,
success: function(respuesta){
console.log(respuesta);
if(window.matchMedia("(max-width:767px)").matches){
swal({
title: "El usuario ha sido actualizado",
type: "success",
confirmButtonText: "¡Cerrar!"
}).then(function(result) {
if (result.value) {
window.location = "proyectos";
}
});
}
}
})
if(estadoAceptado2 == 2){
$(this).addClass('btn-danger');
$(this).removeClass('btn-info');
$(this).html('Cancelado');
$("tr").find('nombreTexto').hide();
}
})
最佳答案
都是buttons
<div class='btn-group'>
的 child ?如果是的话,你可以对你做这样的事情button
点击event
:
$(document).on('click', '.btnRechazado', function(){
$(this).closest('div.btn-group').find('.btnEliminarProyecto').remove();
//your code
});
或者,如果两者都是 buttons
是siblings elements
:
$(this).siblings('button').remove();
如果您不想删除<button>
来自 DOM
的元素你可以改变remove()
至hide()
JQuery remove()
和hide()
API文档:
https://api.jquery.com/remove/ ,
https://api.jquery.com/hide/
关于javascript - 选择DataTable中一行的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58016377/