Jump to content
php.lv forumi

elementāra saskaitīšana un atņemšana


briedis

Recommended Posts

Karoč, ir forma ar radio


.

<b>Izrakstam rēķinu!</b><br>
<input type="radio" name="rekins" value="G" onchange="cikSumma('p',7);"> Gadam <b>(Ls 18)</b><br>
<input type="radio" name="rekins" value="P" onchange="cikSumma('a',7);"> Pusgadam <b>(Ls 11)</b>

Summa apmaksai: <input type="text" id="summa" value="18">

 

Un skripts

 

<script type="text/javascript">
function cikSumma(darbiba,cik){
	if(darbiba == 'a')
		document.forma.summa.value -= cik;
	else
		document.forma.summa.value += cik;

	alert(document.forma.summa.value);
}
</script>

 

Ko darīt, lai nebūtu šitā:

18 - 7 = 11

11 + 7 = 117

117 - 7 = 110

110 + 7 = 1107

utt utt...

Link to comment
Share on other sites

Iesaku parseInt (arī parseFloat) vietā izmantot veco "nesmuko" metodi

 

var skaitlis_kaa_floats_vai_ints =  skaitlis_kaa_strings * 1;

 

Jo stringus, kas sāksies kā '0..' parseInt() uztvērs kā oktālos skaitļus (tā viņus sauc?).

 

Šajā situācijā gan tas nedraud, bet es vispārīgi iesaku.

Link to comment
Share on other sites

Iesaku parseInt (arī parseFloat) vietā izmantot veco "nesmuko" metodi

 

var skaitlis_kaa_floats_vai_ints =  skaitlis_kaa_strings * 1;

 

Jo stringus, kas sāksies kā '0..' parseInt() uztvērs kā oktālos skaitļus (tā viņus sauc?).

 

Šajā situācijā gan tas nedraud, bet es vispārīgi iesaku.

 

Ok, ņemšu vērā! Paldies :)

 

A kā šito fišku taisīt ar čekboksu?

 

Ja čekboks atķeksēts +5, ja nē, -5?

 

onchange='checkbox(id,5)'

 

if(document.forma.id.checked) value + 5; else -5?

Link to comment
Share on other sites

tāpēc parseInt ir radix parametrs,

parseInt('08', 10);

 

par to +5 / -5, ja tas skailtis mainās, reizini to ar 1 vai -1 attiecīgi

 

147 + 5 * (document.forma.id.checked? 1 : -1)

Edited by indoom
Link to comment
Share on other sites

parseInt() ir otrs arguments ar kuru norādīt bāzi kādā strings ir,

alert([
 'parseInt("01110",10) => ' + parseInt("01110",10),
 'parseInt("01110",2) => ' + parseInt("01110",2),
 'parseInt("01110",8) => ' + parseInt("01110",8),
 'parseInt("01110") => ' + parseInt("01110")
].join("\n"));

Link to comment
Share on other sites

×
×
  • Create New...