Soy un novato en Programación Orientada a Objetos, así que sería bueno si alguien me puede ayudar ^^
tengo esta función JS rn:
function confirmDel(element) { let confirmDel = confirm("u sure u want to delete?"); if (confirmDel) { console.log(element); window.location.href=="formprocess.php?firmadelete="; alert(deleted"); } else{ alert("deleting canceled"); } }y en mi HTML obtuve
<a class="btn btn-outline-danger" href="formprocess.php?firmadelete=<?= $result['FirmenID']; ?>" ><i class="fa-solid fa-trash-can"></i></a> </td> Tal vez veas mi intento. Quiero preguntar "¿Seguro que quieres eliminar?" y si presiono "sí", debería llevarme a href formprocess.php?firmadelete=<?= $result['FirmenID']; ?>
¿Cómo puedo traducir $result['FirmenID'] al script JS?
Saludos desde Alemania ~Lampi
Suponiendo que el javascript está en un archivo JS separado y no solo en línea en el propio HTML (lo que le permitiría agregar el mismo PHP que está usando para agregarlo al href), la forma más fácil de hacerlo probablemente sería simplemente agregue un atributo de datos al elemento HTML y luego use JS para leer el valor de eso.
Si el element pasado es el enlace en el que se hizo clic, podría hacer algo como esto en el HTML:
<a class="btn btn-outline-danger" href="formprocess.php?firmadelete=<?= $result['FirmenID']; ?>" data-id="<?= $result['FirmenID']; ?>> <i class="fa-solid fa-trash-can"></i> </a>y esto en el JS:
function confirmDel(element) { ... if (confirmDel) { console.log(element); const id = element.getAttribute('data-id'); window.location.href == "formprocess.php?firmadelete=" + id; ...o algo similar.
href un enlace siempre necesita un href, así que lo cambié a '#' (que es la parte superior de la página).
onclick Utilizo click-event (onclick) para llamar a la función confirmDel. El evento.preventDefault(); Se llama a la función para cancelar el href.
data-id El FirmId se guarda en data-id. Los posibles caracteres especiales se escapan con la función htmlspecialchars, esto no es necesario si está seguro de que FirmenID es siempre un número.
<a class="btn btn-outline-danger" href="#" onclick="confirmDel(this); event.preventDefault();" data-id="<?= htmlspecialchars($result['FirmenID'], ENT_HTML5 | ENT_QUOTES | ENT_SUBSTITUTE, "UTF-8"); ?>"><i class="fa-solid fa-trash-can"></i> testme</a></td>JavaScript Lo único que cambia en el código JavaScript es agregar el FirmenID detrás de la URL. Esto se hace recuperando la identificación accediendo a data-id (*.dataset.id).
Alerta El cuadro de Alerta nunca se mostrará, ya que la URL de la página cambia. Si desea que la URL se ejecute en segundo plano, marque XMLHttpRequest o Fetch .
function confirmDel(element) { let confirmDel = confirm("u sure u want to delete?"); if (confirmDel) { console.log(element); window.location.href="formprocess.php?firmadelete=" + element.dataset.id; alert("deleted"); } else{ alert("deleting canceled"); } }