Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2012
    residenza
    Bologna
    Messaggi
    38

    Controllo somma di valori in una select

    Salve, sono ancora qui a chiedere un aiuto sull'ennesimo problema che mi si è presentato

    Avrei bisogno di avere una convalida prima dell'invio di questo form:

    codice:
     <form action="<?php echo $editFormAction; ?>" method="POST" name="contract"> <table class="myp-table"> 
    <tr>
    <td>Value Test</td>
     </tr>
    <?php do { ?>
    <tr>
    <td><select name="playerContract[]">
     <option value="0" <?php if (!(strcmp(0, $row_datacontract['playerContract']))) {echo "selected=\"selected\"";} ?>>0</option>
    <option value="1" <?php if (!(strcmp(1, $row_datacontract['playerContract']))) {echo "selected=\"selected\"";} ?>>1</option>
    <option value="2" <?php if (!(strcmp(2, $row_datacontract['playerContract']))) {echo "selected=\"selected\"";} ?>>2</option>
    <option value="3" <?php if (!(strcmp(3, $row_datacontract['playerContract']))) {echo "selected=\"selected\"";} ?>>3</option>
    </select></td>
     </tr>
     <?php } while ($row_datacontract = mysql_fetch_assoc($datacontract)); ?>
     <tr>
    <td><input class="linkbuttonmp" name="contract" type="submit" value="Invio" /></td>
    </tr>
    </table>
    </form>
    La somma dei valori che l'utente seleziona non deve superare il valore impostato di default, che nel mio caso è un valore prelevato dal database.

    Ho provato questa soluzione con jquery ma non so il perchè non va

    codice:
    var max = 3;
     $("select").change(function () { 
     var selects = 0;
     $("select").each(function () {
     selects = selects + parseInt($(this).val());      }); 
     if(selects >= max) { 
     $("#submit").attr("disabled","disabled");     } else {         $("#submit").removeAttr("disabled");     }  });
    Mi date un aiuto?

    Grazie

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Se vuoi capire che valore ha la option seleziona prova cosi:
    codice:
    $(document).ready(function(){
    var max = 3;
    $("select").change(function () { 
    if($(this).is(":selected") >= max) { 
    $("submit").attr("disabled","disabled");} else {
    $("submit").removeAttr("disabled");}  });  
    });
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2012
    residenza
    Bologna
    Messaggi
    38
    Originariamente inviato da cavicchiandrea
    Se vuoi capire che valore ha la option seleziona prova cosi:
    codice:
    $(document).ready(function(){
    var max = 3;
    $("select").change(function () { 
    if($(this).is(":selected") >= max) { 
    $("submit").attr("disabled","disabled");} else {
    $("submit").removeAttr("disabled");}  });  
    });
    Provato ma nada, bho io nn so piu cosa fare. C'è una soluzione in javascript puro da provare?

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    codice:
    <!DOCTYPE HTML>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JQuery - Div scorrevole</title>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script>
    $(document).ready(function(){
    var maxval = 3;
    $("select").change(function () {
    if(parseInt($(this, "option:selected").val()) >= parseInt(maxval)) { 
    $("input:submit").removeAttr("disabled");
    }else{
    $("input:submit").attr("disabled","disabled");}
    });  
    }); 
    </script>
    </head>
    
    <body>
    
    <select name="playerContract">
     <option value="0">0</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    </select>
    <input name="invia" type="submit" disabled value="invia">
    </body>
    </html>
    che puoi testare
    http://webandylab.altervista.org/select.html
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2012
    residenza
    Bologna
    Messaggi
    38
    Grazie mille Andrea, funziona perfettamente, mi era sfuggito un pezzo di codice.

    Grazie di tutto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.