Autor Zpráva
Harpl
Profil *
Dobrý den,

snažím se sečíst hodnotu všech inputů, jenže tam mám ještě kontroly, že když value = 0, tak div s inputem zmizí a když je větší než 1, tak se zase objeví (i když zmizí je na stránce trošku jinde tlačítko pro přidání hodnoty). Podařilo se mi i sečíst hodnoty, jenže pak nefungovala tato ověření. Potřeboval bych tedy sčítat hodnoty všech inputů, ale dynamicky, při každé změně se obnoví.

JS:
      $(function() {  
  $('input.rowModre').change(function () { 
    var $this = $(this); 
    if ($this.val() == "0") { 
      $("div.blues").fadeOut( "slow" );
    } else { 
      $("div.blues").fadeIn( "slow" );
    } 
  }); 
 
  $('input.rowModre').trigger('change'); 
});  
          function pricistModre()
{
    var value = parseInt(document.getElementById('pocetModre').value, 10);
    value = isNaN(value) ? 0 : value;
    if (value == 0) {
      $("div.blues").fadeIn( "slow" );
    };
    value++;
    document.getElementById('pocetModre').value = value;
}

          function pricistZlute()
{
    var value = parseInt(document.getElementById('pocetZlute').value, 10);
    value = isNaN(value) ? 0 : value;
    if (value == 0) {
      $("div.yellows").fadeIn( "slow" );
    };
    value++;
    document.getElementById('pocetZlute').value = value;
}

      $(function() {  
  $('input.rowZlute').change(function () { 
    var $this = $(this); 
    if ($this.val() == "0") { 
      $("div.yellows").fadeOut( "slow" );
    } else { 
      $("div.yellows").fadeIn( "slow" );
    } 
  }); 
 
  $('input.rowZlute').trigger('change'); 
});  

          function pricistCervene()
{
    var value = parseInt(document.getElementById('pocetCervene').value, 10);
    value = isNaN(value) ? 0 : value;
    if (value == 0) {
      $("div.reds").fadeIn( "slow" );
    };
    value++;
    document.getElementById('pocetCervene').value = value;
}

      $(function() {  
  $('input.rowCervene').change(function () { 
    var $this = $(this); 
    if ($this.val() == "0") { 
      $("div.reds").fadeOut( "slow" );
    } else { 
      $("div.reds").fadeIn( "slow" );
    } 
  }); 
 
  $('input.rowCervene').trigger('change'); 
});  

          function pricistBile()
{
    var value = parseInt(document.getElementById('pocetBile').value, 10);
    value = isNaN(value) ? 0 : value;
    if (value == 0) {
      $("div.whites").fadeIn( "slow" );
    };
    value++;
    document.getElementById('pocetBile').value = value;
}

      $(function() {  
  $('input.rowBile').change(function () { 
    var $this = $(this); 
    if ($this.val() == "0") { 
      $("div.whites").fadeOut( "slow" );
    } else { 
      $("div.whites").fadeIn( "slow" );
    } 
  }); 
 
  $('input.rowBile').trigger('change'); 
});   


HTML (pouze část s inputy):
<div class="listitem">
          <style type="text/css">
            .ittem {
overflow:hidden;
display:block;
}
          </style>
              <div class="ittem blues">
                  <a href=""><img src="images/blue.png" alt=""></a>
                  <a href=""><h3>blue</h3></a>
                  <span>Modré</span>
                  <div class="pocetkusu">
                      Počet kusů
                  </div>    
                  <input type="number" value="0" class="number rowModre" min="0" name="pocetModre" id="pocetModre">
                  <div class="cena">
                      10kč
                  </div>   
                  <div class="posta">
                      99kč Poštovné a balné
                  </div>  
                  <img src="images/krizek.png" alt="" class="krizek">  
              </div>
              <div class="ittem yellows">
                  <a href=""><img src="images/yellow.png" alt=""></a>
                  <a href=""><h3>žluté</b></h3></a>
                  <span>Žluté</span>
                  <div class="pocetkusu">
                      Počet kusů
                  </div>    
                  <input type="number" value="0" class="number rowZlute" min="0" name="pocetZlute" id="pocetZlute">
                  <div class="cena">
                      10kč
                  </div>   
                  <div class="posta">
                      99kč Poštovné a balné
                  </div>  
                  <img src="images/krizek.png" alt="" class="krizek">  
              </div>
              <div class="ittem whites">
                  <a href=""><img src="images/black.png" alt=""></a>
                  <a href=""><h3>černé</b></h3></a>
                  <span>Bílé</span>
                  <div class="pocetkusu">
                      Počet kusů
                  </div>    
                  <input type="number" value="0" class="number rowBile" min="0" name="pocetBile" id="pocetBile">
                  <div class="cena">
                      10kč
                  </div>   
                  <div class="posta">
                      99kč Poštovné a balné
                  </div>  
                  <img src="images/krizek.png" alt="" class="krizek">  
              </div>
              <div class="ittem reds">
                  <a href=""><img src="images/red.png" alt=""></a>
                  <a href=""><h3>červené</h3></a>
                  <span>Červené</span>
                  <div class="pocetkusu">
                      Počet kusů
                  </div>    
                  <input type="number" value="0" class="number rowCervene" min="0" name="pocetCervene" id="pocetCervene">
                  <div class="cena">
                      10kč
                  </div>   
                  <div class="posta">
                      99kč Poštovné a balné
                  </div>  
                  <img src="images/krizek.png" alt="" class="krizek">  
              </div>
              <div class="end">
                  <p>slevový kupon</p><input type="text">
                  <span>SPOLU: <b>
                  CENA ZDE Kč</b></span>
              </div>    
              
          
          </div>  

Děkuji
Taps
Profil
Harpl:
Potřeboval bych tedy sčítat hodnoty všech inputů, ale dynamicky, při každé změně se obnoví.
musíš hodnoty všech input projít přes each a sečít. pro inspiraci viz http://jsfiddle.net/taps/2T9TG/
http://stackoverflow.com/questions/9609731/onchange-event-for-input-type-number
Harpl
Profil *
A na základě čeho se to obnovuje? Někdy se mi to obnovilo, někdy ne. Nakonec z toho vylezlo tohle. http://clip2net.com/s/jiG4mk
Potřeboval bych, aby to bylo opravdu aktuální, bylo by hodně prasácké dělat to např každou sekundu?
Taps
Profil
Harpl:
obnovuje se to na základě kliknutí do inputu a na základě stisku klávesy

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: