E allora? Allora l'ho ricreato, in forma semplice ovviamente
Allora, se non uso il tasto [COPIA I DATI] non ci sono problemi e il form viene resettato, e come vedete ho usato solo il reset() senza andare a parare nei campi select. Così funziona!codice HTML:<!DOCTYPE html> <html lang="it" dir="ltr"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> </head> <body> <div id="cliccante"> <p id="anno">2500</p> <p>Scultura<input type="hidden" id="tipologia" value="1"></p> <p>giorno 31<input type="hidden" id="giornata" value="31"></p> <p>Mese maggio<input type="hidden" id="mesata" value="5"></p> <p><button type="button" id="copia">COPIA i DATI</button></p> </div> <form method="post" action="#"> <p><button type="button" id="cancella">CANCELLA</button></p> <p><input type="text" id="annata" value=""></p> <p><label for="tipo">Tipo</label> <select id="tipo" name="tipo"> <option value="0">Pittura</option> <option value="1">Scultura</option> <option value="2">Carboncino</option> <option value="3">Vita dell'autore</option> </select> </p> <p><label for="giorno">Giorno</label> <select name="giorno" id="giorno"> <option value="0">Giorno</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option> <option value="24">24</option> <option value="25">25</option> <option value="26">26</option> <option value="27">27</option> <option value="28">28</option> <option value="29">29</option> <option value="30">30</option> <option value="31">31</option> </select> </p> <p><label for="mese">Mese</label> <select name="mese" id="mese"> <option value="0">Mese</option> <option value="1">gennaio</option> <option value="2">febbraio</option> <option value="3">marzo</option> <option value="4">aprile</option> <option value="5">maggio</option> <option value="6">giugno</option> <option value="7">luglio</option> <option value="8">agosto</option> <option value="9">settembre</option> <option value="10">ottobre</option> <option value="11">novembre</option> <option value="12">dicembre</option> </select> </p> </form> <script src="jquery-1.12.3.min.js"></script> <script> $(document).ready(function() { $('#copia').on('click', function(){ $('#annata').val( $('#anno').text() ); $('#tipo option[value=' + $('#tipologia').val() + ']').attr('selected', 'selected'); $('#giorno option[value=' + $('#giornata').val() + ']').attr('selected', 'selected'); $('#mese option[value=' + $('#mesata').val() + ']').attr('selected', 'selected'); }); $('#cancella').on('click', function(){ if (confirm("Sicuro che vuoi cancellare il form per ricominciare da capo?") === true) { $('form')[0].reset(); } }); }); </script> </body> </html>
Ma se clicco sul tasto [COPIA I DATI] che comunque è la situazione reale, allora di nuovo, i campi select non vengono più resettati, o meglio, vengono resettati con i dati Scultura, 31 e 5 (maggio).
Credo che il problema derivi dal fatto che vengano definiti le option selected tramite il javascript e il reset le riporta a quel punto e non al valore iniziale.


Rispondi quotando