Avant d'exécuter un fichier json et de désactiver un bouton, je souhaite simplement activer d'autres boutons qui ont pu être désactivés auparavant. Je pense que c'est lié à des rappels que je ne comprends toujours pas. Dans le code ci-dessous, le bouton cliqué ne devient pas désactivé avant l'exécution de getJSON. Un callback est une fonction que vous transmettez à une autre fonction.jquery - rappels 101
$(".btnUseProduct").live("click", function(e) {
var clickedId = $(this).attr('id');
var provisioning_id = clickedId.split("^")[0];
var entity_id = clickedId.split("^")[1];
var entity = clickedId.split("^")[2];
showUseButtons(function(){
$(this).attr({'disabled':'disabled','value':'Used'}); //doesn't work
$.getJSON("/chinabuy-new/cfcs/services.cfc?method=update_provisioning&returnformat=json&queryformat=column",{"provisioning_id":provisioning_id,"entity_id":entity_id},function(res,code){
});
});
e.preventDefault();
});
function showUseButtons() {
$(".btnUseProduct").each(function(e) {
$(this).attr({'disabled':'disabled','value':'Used'});
});
}
Cela fonctionne à un degré. Mais j'ai deux boutons qui sont à la fois désactivant. Seul le clic devrait désactiver. Bouton 1 (cliqué): Bouton 2 (non cliqué): – Paul
Attendez ... Je pense que je vois ce qui se passe ... accrocher .. Oh, je pensais avoir trouvé le problème mais non. La fonction showUseButtons devrait montrer ne pas se cacher, donc j'ai changé cela. Cependant, au clic, le désactiver ne fonctionne pas. – Paul
@Paul: Les ID d'élément DOM ne doivent pas commencer par un nombre (c'est-à-dire un code HTML non valide), et ne doivent pas contenir '^'. – sje397