2010-12-15 86 views
2

code: jsfiddle.net/bVgwc/2/cochez la case qui vérifie une autre case à cocher dans jQuery

Je ne peux pas produire un code jquery pour faire Darc vérifié (ci-dessous) lorsque je vérifie manuellement Darc (ci-dessus) Et même avec les deux autres.
vérification ci-dessus Darc -> Darc doit être vérifié automatiquement sous
chèque LaVoiture ci-dessus -> Lavoiture doit être vérifié automatiquement sous
chèque Gerli ci-dessus -> Gerli doit être automatiquement vérifiée ci-dessous.

Est-ce logique? J'ai fait un autre code jquery pour une autre même situation MAIS je ne peux pas l'adapter pour ce cas.

Quelqu'un peut-il s'il vous plaît écrire le code dans ce lien j'ai posté ci-dessus où est le code en direct?

Les gars, ce code fonctionne mais son pour cette situation particulière: jsfiddle.net/F7nBL/6/

peut soembody ADAPT à cette im situation actuelle de TAHT présenter ici? peut-être de cette façon est plus facile

+4

Dites cela 10 fois, vite. – Stephen

Répondre

1

Fixé en fork * note actuellement corrigé. a fait une fourchette au lieu d'une mise à jour ...

logique il est, donner toutes les cases à cocher de la même classe, 'checkDbl' et donner à chaque paire de cases à cocher de la même classe, Darc, VL, Geril et un rel qui correspond cette deuxième classe. puis attacher un onChange à la checkDbl de classe qui change tous les éléments fo la classe qui est le même que celui rel être le même état vérifié ...

$('.checkDbl').change(function(){ 
     $('.'+$(this).attr('rel')).attr('checked',$(this).attr('checked')); 
    }); 
+1

Cela ne fonctionne pas pour moi. – Stephen

+0

Son ne fonctionne pas FatherStorm, pourriez-vous jeter un oeil? – sebas

+1

La classe checkDbl n'a pas été affectée aux cases à cocher lorsque j'ai regardé. –

1

Si vous cherchez un code qui fonctionne sur votre HTML existant , ce qui suit devrait fonctionner

$("input[type=checkbox]").click(function(){ 
    var id = $(this).attr("id"); 
    var fieldName = id.substring(id.lastIndexOf("_")+1); 
    var checked = $(this).attr("checked"); 
    $("div label").each(function(){ 
     var text= $(this).text().trim(); 
     if (fieldName == text){ 
      $(this).find("input").attr("checked",checked); 
     } 

    }); 
}); 

Ce n'est probablement pas le code le plus efficace, mais il fait le travail. Vous ne devez pas changer l'identifiant de la case Darc en CustomFields[25_3]_Darc au lieu de CustomFields[25_3]_Dark pour que cela fonctionne sur la case à cocher Darc.