2013-01-05 21 views
9

Sto tentando di utilizzare un div per inviare un modulo. Ecco il codice HTML:Modulo Invia con Div onClick

<form name="search-form" 
     id="search-form" 
     action="php.php" 
     class="form-search"> 

    <input style="color: black; background: rgba(255,255,255,0.5); padding: 15px; font-size: 18px;" 
      type="text" 
      name="search" 
      class="input-medium search-query"> 

     <div class="button1" onClick="document.forms["search-form"].submit();"> 
      <a href="#"> 
       <img alt="" src="/img/buttons/icon1.png" /> 
      </a> 
     </div> 
    </form> 

Il modulo non viene inviato quando si fa clic su div. Qualcuno potrebbe indicare il problema? grazie. Ci sto provando da almeno un'ora.

Il a href è necessario per mantenere lo stile, ma anche se lo rimuovo e lasciato con solo l'icona, l'invio non funziona; né funziona se applico lo onclick all'immagine.

risposta

22

Aggiungi search-form tra apici:

onClick="document.forms['search-form'].submit();" 
+0

perfetto thank –

4

Non si può semplicemente utilizzare le virgolette nelle citazioni. Usa virgolette singole per fissare:

<form name="search-form" id="search-form" action="php.php" class="form-search"> 
    <input style="color: black; background: rgba(255,255,255,0.5); padding: 15px; font-size: 18px;" type="text" name="search" class="input-medium search-query"> 
    <div class="button1" onClick="document.forms['search-form'].submit();"> 
     <a href="#"> 
      <img alt="" src="img/buttons/icon1.png" /> 
     </a> 
    </div> 
</form> 
0

Esso non può avere nulla a che fare con l'errore (o forse lo fa, a causa di html non valido?), Ma si dovrebbe aggiungere un end-tag per il tag input, a destra alla fine qui:

<input style="color: black; (... etc) " 
     type="text" 
     name="search" 
     class="input-medium search-query" />