epic

Pro
Se incorporó
11 Febrero 2007
Mensajes
807
Hola a todos... estoy tratando de desactivar el boton "Guardar" cuando se carga la pagina, dependiendo del valor del "input".

Código:
<script>
            function toggleButton()
            {
                var status_pcte = document.getElementById('alta').value;
 
                if (status_pcte == "No") {
                    document.getElementById('submitButton').disabled = false;
                } else {
                    document.getElementById('submitButton').disabled = true;
                }
            }
            </script>

y en el <form> tengo el INPUT oculto, que viene con el valor rescatado de la bd, que puede ser "Si" o "No"... pero si es "Si" el maldito boton se tiene que desactivar.

Código:
    <input type="hidden" id="alta" name="alta" onchange="toggleButton()"  value="<?php echo $row['pcte_alta']; ?>">



Código:
        <button type="submit" id="submitButton" class="btn btn-primary">Guardar</button>


He probado con onchange, oninput, y varios mas... saben cual ocion de esta es la correcta? porque hay un monton y si no es asi, como lo podria bloquear ??

Gracias!
 

freishner

Capo
Se incorporó
16 Noviembre 2021
Mensajes
325
cuando se carga la pagina

JavaScript:
<button type="submit" id="submitButton" class="btn btn-primary" <?php echo $row["pcte_alta"] == "Si" ? "disabled" : ""; ?>>Guardar</button>

Cuando la página es cargada, el código PHP ya se habrá ejecutado en el servidor, así que si el valor de $row["pcte_alta"] es "Si", el botón saldrá así desde el servidor (deshabilitado por defecto):

JavaScript:
<button type="submit" id="submitButton" class="btn btn-primary" disabled>Guardar</button>


Si no es eso, entonces no entendí lo que quieres hacer...
 
Upvote 0

Cosme

Gold Member
Se incorporó
27 Febrero 2005
Mensajes
8.281
Dale una mirada a preventDefault

Uso "onMouseUp" para que el usuario se pueda arrepentir de apretar el botón cuando ya le hizo clic, pero no ha soltado el botón del mouse

JavaScript:
    document.getElementById("submitButton").addEventListener("onmouseup", function(event){
     event.preventDefault()
     var status_pcte = document.getElementById('alta').value
     if (status_pcte == "No") {
         //no mando el form
        console.log("Error enviando form")
        alert("No está permitido enviar el form")
        return false
     } else {
         //mando el form con una query asincronica
          Payload = {
            dato1: document.getElementById('alta').value
        };
          var InitObj = {
               method: 'POST',
               headers: new Headers(),
               mode: 'cors',
               cache: 'no-cache',
               redirect: 'follow',
               body: JSON.stringify(Payload)
           };
        var TheRequest = new Request('url', InitObj);
        fetch(TheRequest)
        .then(function(response) {
            return response.json();
        })
        .then(function(data) {
            //que hacer con la data devuelta
            console.log(data);
           });
    }
})
 
Upvote 0

epic

Pro
Se incorporó
11 Febrero 2007
Mensajes
807
JavaScript:
<button type="submit" id="submitButton" class="btn btn-primary" <?php echo $row["pcte_alta"] == "Si" ? "disabled" : ""; ?>>Guardar</button>

Cuando la página es cargada, el código PHP ya se habrá ejecutado en el servidor, así que si el valor de $row["pcte_alta"] es "Si", el botón saldrá así desde el servidor (deshabilitado por defecto):

JavaScript:
<button type="submit" id="submitButton" class="btn btn-primary" disabled>Guardar</button>


Si no es eso, entonces no entendí lo que quieres hacer...

Si, justamente era esto... muchas gracias!
 
Upvote 0
Subir