Ciao Ragazzi, ho un problema con questo script che prende i valori da filtri di un form. Se viene settato un valore in questi filtri spariranno tutti gli altri lasciando quelli. In questo caso i valori sono righe di una tabella e con il seguente script rilevo se c'è stato l'inserimento di valori da filtrare e di conseguenza il far scrivere uno script javascript per nascondere gli altri:
Codice PHP:
<?php // FILTRI
if(isset($_POST['submit'])){
  
$count=0;       
  
$filtri=array();
  if(isset(
$_POST['filtro1'])){
    
$filtri[0]=$_POST['filtro1'];
     
$count+=1;
  }
  if(isset(
$_POST['filtro2'])){
     
$filtri[1]=$_POST['filtro2'];
    
$count+=1;
  }
  if(isset(
$_POST['filtro3'])){
    
$filtri[2]=$_POST['filtro3'];
     
$count+=1;
  }
  if(isset(
$_POST['filtro4'])){
     
$filtri[3]=$_POST['filtro4'];
     
$count+=1;
  }
  if(isset(
$_POST['filtro5'])){
     
$filtri[4]=$_POST['filtro5'];
     
$count+=1;
  }

  if(
$count>0){
    echo 
"$(\"#tabella table tr:nth-child(n+3)\").not(\"";
    for(
$f=0;$f<5;$f++){
      if(isset(
$filtri[$f])){
        if(
$filtri[$f]>&& $filtri[$f]<91){
          echo 
"#tabella table tr:nth-child(".($filtri[$f]+2).")";
          if(
$f>$count-1){
            echo 
",";
          }
        }
      }
    }
    echo 
"\").addClass(\"nascondi\");";
  }else
      exit;
}

?>
Tutto questo è inserito in uno script javascript che si carica al caricamento del documento, quindi con $(document).ready()...
Praticamente al momento dell'invio del form sia se non inserisco valori da filtrare sia che li inserisco mi scompare tutti i valori, come se non prendesse il count: quindi mi stampa i valori echo dopo l'if del del count, visto che il for non lo prende in considerazione perché non ci sono valori da filtrare. Il risultato è questo
codice:
$("#tabella table tr:nth-child(n+3)").not("").addClass("nascondi");