1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
   | <!DOCTYPE html>
<html lang="fr" dir="ltr">
<head>
  <meta http-equiv="cache-control" content="public, max-age=60">
  <meta charset="utf-8">
  <meta name="viewport" content="initial-scale=1.0">
  <meta name="author" content="Daniel Hagnoul">
  <title>Test</title>
  <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/sunny/jquery-ui.min.css">
  <style>
    #enchere { margin: 12px; }
    #amount { border: 0; color: #f6931f; font-weight: bold; }
    #slider-range { margin-top: 12px; margin-bottom: 12px; width: 500px; }
  </style>
</head>
<body>
 
  <form id="enchere">
    <label for="amount">Montant de votre enchére : <input type="text" id="amount" readonly></label>
    <div id="slider-range"></div>
    <input type="submit" value="Enchérir">
  </form>
 
  <script src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
  <script src="http://code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
  <script>
    "use strict";
 
    $( function(){ // forme abrégée de $(document).ready( function( ){
 
      var
        min = 1,
        max = 50,
        valeur = min;
 
      $( "#slider-range" ).slider({
        "range" : "max",
        "min" : min,
        "max" : max,
        "values" : min,
        "slide" : function( event, ui ){
          $( "#amount" ).val( ui.value + " " );
        },
        "stop" : function( event, ui ){
          valeur = ui.value;
        }
      });
 
      $( "#amount" ).val( $( "#slider-range" ).slider( "value" ) + " " );
 
      $( "#enchere" ).on( "submit", function( event ){
        event.stopPropagation();
        event.preventDefault();
 
        var jqXHR = $.post( "fichier.php", { "valeur" : valeur } );
 
        setTimeout( function(){
          // Si l'objet différé existe dans l'état "attendre", 
          // alors exécute la méthode fail()
 
          if ( jqXHR && jqXHR.state() === "pending" ){
            jqXHR.abort();
          }
        }, 3000 ); // 3s
 
        jqXHR.done( function( data, textStatus, jqXHR ){
          // succès de la transaction, on doit traiter le contenu de data
          console.log( data, textStatus, jqXHR );
 
        });
 
        jqXHR.fail( function( jqXHR, textStatus, errorThrown ){
          // échec de la transaction, gérer la catastrophe
          console.log( jqXHR, textStatus, errorThrown );
 
        });
 
        jqXHR.always( function( jqXHR, textStatus ){
          // la transaction est terminée
          // nettoyage
          // exécution d'un code dépendant
          console.log( jqXHR, textStatus );
 
          console.log( valeur );
        })
      });
 
    });
 
    $( window ).load( function(){
 
    });
  </script>
</body>
</html> | 
Partager