JSFiddle - React, Tailwind, and code Playground
HTML
<form action="#" method="GET">
<label for="naziv">Naziv</label>
<input type="text" id="naziv" name="naziv" placeholder="naziv">
<br>
<label for="cena">Cena</label>
<input type="text" id="cena" name="cena" placeholder="cena">
<br>
<br>Je na zalogi
<br>
<label for="jeNaZalogi-1">Da</label>
<input type="radio" id="jeNaZalogi-1" name="jeNaZalogi" value="true" checked>
<br>
<label for="jeNaZalogi-0">Ne</label>
<input type="radio" id="jeNaZalogi-0" name="jeNaZalogi" value="false">
<br>
<br>
<input type="submit" class="btn-submit" value="Dodaj artikel">
<br>
<br>
<input type="submit" class="btn-sumup" value="Skupni znesek">
</form>
CSS
input[type="text"] {
text-align: right;
}
JavaScript
function Artikel(naziv, cena, jeNaZalogi) {
this.naziv = naziv;
this.cena = cena;
this.jeNaZalogi = jeNaZalogi;
}
Artikel.prototype.vrniCeno = function () {
if (!this.jeNaZalogi) {
return null;
}
return this.cena;
};
var Dodaj = function () {
console.log('Dodaj');
var naziv = document.getElementById('naziv').value;
if (naziv == false) {
return 'Napaka - naziv';
}
var cena = parseFloat(document.getElementById('cena').value);
if (cena == false) {
return 'Napaka - cena';
}
if (isNaN(cena)) {
return 'Napaka - isNaN(cena)';
}
var jeNaZalogi = document.querySelector('input[name="jeNaZalogi"]:checked').value;
/* dela od IE8 naprej - majhen hack */
poljeArtiklov.push(new Artikel(naziv, cena, jeNaZalogi === 'true'));
document.getElementById('naziv').value = '';
document.getElementById('cena').value = '';
return 'Dodajanje uspešno';
}
/* gumb "Dodaj artikel" */
document.getElementsByClassName('btn-submit')[0].onclick = function () {
alert(Dodaj());
return false;
}
var PridobiSkupniZnesek = function () {
console.log('PridobiSkupniZnesek');
var sum = 0,
tmp;
for (var i = 0; i < poljeArtiklov.length; i++) {
console.log(poljeArtiklov[i]);
tmp = poljeArtiklov[i].vrniCeno();
if (tmp) {
sum += tmp;
}
}
return sum;
}
/* gumb "Dodaj artikel" */
document.getElementsByClassName('btn-sumup')[0].onclick = function () {
alert(PridobiSkupniZnesek());
return false;
}
var poljeArtiklov = new Array();
poljeArtiklov.push(new Artikel('Artikel 1', parseFloat(28), true));
poljeArtiklov.push(new Artikel('Artikel 2', parseFloat(25), false));
console.log(poljeArtiklov[1].vrniCeno());