hace un par de días me vi en la obligación de crear una función que me permitiera cambiar estados de botones... antes lo controlaba directamente desde ASP, lenguaje que utilizo en mi trabajo, pero por varios motivos a veces tenía que modificar su estado cuando el usuario hacía una acción.
Por lo general uso botones con imágenes, y a pesar de que el código en Javascript no es difícil de implementar, siempre estaba con el problema de saber si el botón tenía o no imagen.
Los botones los uso de la siguiente forma:
Código PHP:
<button id="Graba" type="submit"><img src="../images/disk.png" align="absmiddle"/> Grabar</button>
La función que hice averigua si tiene imágen o no, y cambia el estado de activo a desactivo y vice-versa... soy bastante novato en esto del JQuery y si tienen alguna sugerencia se los agradecería.
A propósito, se le engresa el id del botón a la función
Código PHP:
function ButtonToggleEnable(ButtonName) {
var bot = "#" + ButtonName;
var botimg = "#" + ButtonName + " img";
var Img = $(botimg).attr("src");
if ($(botimg).length == 1) {
if ($(bot).attr("disabled") == false) {
Img = Img.substr(0, Img.length - 4) + "_disabled.png";
$(botimg).attr("src", Img);
$(bot).attr("disabled", true);
}
else {
Img = Img.substr(0, Img.indexOf("_")) + ".png"
$(botimg).attr("src", Img);
$(bot).attr("disabled", false);
}
}
else {
if (!($(bot).attr("disabled"))) {
$(bot).attr("disabled", "true");
}
else {
$(bot).attr("disabled", "false");
}
}
}
Código PHP:
<button id="Graba" type="submit" onclick="ButtonToggleEnable(this.id)"><img src="../images/disk.png" align="absmiddle"/> Grabar</button>