Ho la seguente casella di selezione multipla in un modulo HTML, in cui l'utente può selezionare una o più opzioni.Come POST vuotare <selezionare .. più> elementi HTML se vuoto?
<select id="eng_0" name="eng_0[]" multiple size="3">
<option value="Privilégier">Privilégier</option>
<option value="Accepté">Accepté</option>
<option value="Temporaire">Temporaire</option>
</select>
Quando l'utente seleziona alcuna opzione, il modulo è inviato ad un backend PHP ma crea alcun valore dell'array vuoto per $ _POST [ 'eng_0'] come se il campo non era nemmeno nel modulo.
Questo è un po 'come la casella di controllo deselezionata che non è stato presentato problema.
C'è un modo per averlo POST l'oggetto selezionato anche se non esiste un'opzione selezionata? Può essere in jQuery se questo aiuta.
Sì, l'HTML non invia elementi "non riusciti" (che include caselle di selezione senza selezione, pulsanti di opzione senza uno selezionato e caselle di controllo deselezionate). – Powerlord
La domanda è in realtà poco chiara, perché puoi controllare il valore con 'isset ($ _ POST ['eng_0'])' .. Cosa intendi * per POST la selezione anche se non ci sono opzioni selezionate *? – jolt
Come nota a margine, sembra che anche selezionare che non siano "multiple" può avere questo comportamento e non essere inviato, se hanno "nessun valore" selezionato. Ad esempio, se esegui questo javascript 'document.getElementById ('select_id'). Value = 'a non option';' (in genere non è un problema con il normale input da parte dell'utente dato che non è possibile selezionare nulla da un menu a discesa). Ho solo pensato di menzionarlo :) – rogerdpack