• User Newbie

    Problema di Submit di un Form con alcuni valori inseriti da AJAX con IE7

    Salve a tutti,
    spero di aver messo il post nella sezione giusta, dato che ricopre piùargomenti!
    Ho un problemino che ho provato a riassumere nel titolo e che vado a spiegare meglio.
    Ho una pagina PHP con un form; all'interno ho una serie di valori da passare al Database (input, checkbox etc).
    In particolare ad un certo punto ho due RADIO che mi fanno scegliere se visualizzare dei dati o degli altri, presenti in due DIV nascosti (con style="dispaly:none;").
    uno di questi DIV ha all'interno una SELECT che, al variare del contenuto, carica tramite AJAX in un altro DIV, posto all'interno di quello padre nascosto, dei checkbox.
    So che non è chiarissimo ma spero di aver fatto capire la situazione...e comunque provo a rendere in maniera grafica al situazione qui di seguito (non posto ora il codice perchè è abbastanza incasinato..se ce ne sarà bisogno vedrò di sintetizzarlo e postarlo successivamente):
    FORM

    -- input 1
    -- input 2
    -- input n
    -- radio 1 (al clic mostra DIV 1)
    -- radio 2 (al clic mostra DIV 2)
    -- DIV 1 (nascosto con style='dispaly:none;')
    -- check 1
    -- check 2
    -- check n
    -- DIV 2 (nascosto con style='dispaly:none;')
    -- SELECT (al change elabora AJAX e restituisce risultato in DIV 3)
    -- DIV 3

    I dati che seleziono nel DIV 1 passano al Database tranquillamente sia con IE7 che FF, mentre i problemi mi sorgono con il DIV 2 e IE7.
    Ho notato che è come se non leggesse ed inviasse al SUBMIT tutto quello che appare da AJAX in DIV 3. Eppure la soluzione di un SELECT che carica AJAX per mandare a SUBMIT la utilizzo tranquillamente in altre pagine dello stesso sito.
    Può dipendere dal fatto che il DIV 3 si trovi in un DIV precedentemente nascosto??
    Qualcuno sa come ovviare a questo comportamento??
    Grazie in anticipo!!!


  • User Attivo

    Posta un po di codice...forse risulterebbe un po più chiaro il problema....


  • User Newbie

    Eh..lo so...ma non l'ho postato subito perchè l'ho dovuto ripulire un bel po causa incasinatura.
    Ora che l'ho aggiustato lo posto nella speranza che qualcuno mi sappia aiutare!
    [PHP]
    <form name="aggiunta" method="post" action="javascript:chkSndSub('aggiunta','scripts/do_inserzione.php?form=add');" enctype="multipart/form-data">
    <input type="hidden" name="rifUtente" value="1" />
    <input type="hidden" name="tipoListino" value="<?php echo $listino; ?>" />
    <table cellpadding="5" cellspacing="0" width="100%">
    <tr>
    <th align="left" valign="top" class="Testata">Aree Attività</th>
    <td align="left" valign="top" class="TestataNoText">
    Seleziona le aree per:
    <b>Regioni</b> <input type="radio" name="areePer" value="R" onclick="Show('regioni'); Hide('province'); checkNessuno('aggiunta','Province Attività');" />
    <b>Province</b> <input type="radio" name="areePer" value="P" onclick="Show('province'); Hide('regioni'); checkNessuno('aggiunta','Regioni Attività');" />
    <div id="regioni" style="display:none;">
    <?php
    $sqlArea = "SELECT * FROM listaregioni ORDER BY Regione";
    $risArea = InterrogaDB($sqlArea);

         echo "<table width=100% cellpadding=1><tr>\n";
         while ($riga = mysql_fetch_array($risArea)) {
          echo "<td><input type='checkbox' id='Regioni Attività' name='aree".$riga['idRegione']."' value='".$riga['idRegione']."'> ".$riga['Regione']."</td>\n";
          if ($riga['idRegione']%4==0){ echo "</tr><tr>\n"; }
         }
         echo "<td><input type='checkbox' onclick='javascript:checkTutti(\"aggiunta\",\"Regioni Attività\");'>Tutta Italia</td></tr>";
         echo "</table>";
        ?>
        </div>
        <br />
        <div id="province" style="display:none;">
        <select id="Regione" onChange="GetCitta(this);">
         <option>- Scegli una Regione -</option>
         <?php        
          $sqlRegione = "SELECT * FROM listaregioni ORDER BY Regione";
          PopolaSelect($sqlRegione,'','');
         ?>
        </select>
        <div id="prov"></div>
        </div>
       </td>
      </tr>
     </table>
    </form>
    

    [/PHP]