2010-11-07 6 views
3

hey les gars je l'ai écrit un code jquery pour envoyer des valeurs à un fichier phpsélection multiple case à cocher dans jquery

$('#def_formSubmit').live("click",function(){ 

     var query_string = ''; 

        $("input[@type='checkbox'][@name='assotop']").each(
         function() 
         { 
          if(this.checked) 
          { 
           query_string += "&assotop[]=" + this.value; 
          } 
         }); 


    var def_tags = $("#tags").val(); 

    var dataString = 'def_tags='+ def_tags + query_string ; 

    $.ajax({ 
     type: 'POST', 
     url: 'post.php', 
     data: dataString, 
     cache: false, 
     beforeSend: function() { 
      $("#QRresult").html("<img src='images/loading.gif' />"); 
     }, 
     success: function(data5) { 
      $("#QRresult").html(data5); 
     } 
    }); 
    return false; 
}); 

mais sa ne fonctionne pas et ne pas envoyer les valeurs de case à cocher à mon fichier php

Je pense que cette façon d'obtenir des valeurs checkbox est une ancienne approche et ne fonctionne pas pour jquery 1.4

Répondre

3

Supprimer le @ de votre sélecteur. Cela a changé au 1.3

$("input[@type='checkbox'][@name='assotop']").each(

devrait être:

$("input[type='checkbox'][name='assotop']").each(

Vous pouvez également faire:

$("input:checkbox[name='assotop']").each(

EDIT: Ajouté input au sélecteur noté par @lonesomeday.

EDIT: Je suppose que j'utiliser celui avec input[type='checkbox'] afin que querySelectorAll seront utilisés dans les navigateurs qui le supportent.

+0

peut-être utiliser 'entrée: checkbox' aussi? –

+2

+1, mais 'input: checkbox' sera beaucoup plus rapide, car il n'a pas besoin de sélectionner chaque élément et de le vérifier comme étant un élément' input'. – lonesomeday

+1

@lonesomeday - Je pensais que ': checkbox' s'en chargeait. Peut-être que je me trompe. Je vais mettre à jour. EDIT: En regardant les docs, je vois que vous avez raison. Merci. : o) – user113716

1

Essayez ce code:

$(document).ready(function(){ 
    $("#selectAll").change(function(){ 
     $(".sports").prop('checked', ($(this).is(':checked'))); 
    }); 
    $(".sports").change(function(){ 
     $("#selectAll").prop('checked', false); 
    }); 
}); 
Questions connexes