Nie len euro kalkulačka (javascript)

Programovacie jazyky, rady, poradňa...
rudhas
Light Expert
Light Expert
Používateľov profilový obrázok
Príspevky: 71
Registrovaný: 02 feb 2008, 12:55
Kontaktovať používateľa:

Nie len euro kalkulačka (javascript)

Príspevok od používateľa rudhas »

Chcel by som aby kurz to jest hned tretí riadok bol uživateloví dostupní ako prepisatelný..Aby si uživatel mohol zvolit všetky meny..Kto sa podujme na tejto uprave skriptu?Dík :)



Kód: Vybrať všetko

<script type="text/javascript">
//<![CDATA[
kurz = 30.126;
var valuta;
cislo = '';
function clearinp(){
document.getElementById("SKK").value = '';
document.getElementById("EUR").value = '';            
cislo = '';
}
function selectcur(mena){
if (mena == 'SKK'){ 
document.getElementById("SKK").focus();
valuta = 'SKK';
cislo = '';
}
else{
document.getElementById("EUR").focus();
valuta = 'EUR';
cislo = '';
}
}
function stlac(tlacitko){
if (tlacitko == 'inter'){
if (valuta == 'SKK'){cislo = document.getElementById("SKK").value.replace(',', '.');}
if (valuta == 'EUR'){cislo = document.getElementById("EUR").value.replace(',', '.');} 
}
else{
cislo = cislo + tlacitko ;        
}
cislo = cislo.replace(' ', '');
//cislo = parseInt(cislo);
if (valuta == 'SKK'){
if(cislo > 0){
var vysledok = (cislo / kurz).toFixed(2);
document.getElementById("SKK").value = cislo;  
if(vysledok == "NaN" || vysledok === undefined || vysledok < 0){
document.getElementById("EUR").value = "sds";  
}	
else{
document.getElementById("EUR").value = vysledok;
}
}	
else{
document.getElementById("EUR").value = "";
}  
}
else{
if(cislo > 0){
var vysledok = (cislo * kurz).toFixed(2);
document.getElementById("EUR").value = cislo;
//document.getElementById("SKK").value = (cislo * kurz).toFixed(2);
if(vysledok === NaN || vysledok < 0){
document.getElementById("SKK").value = "";  
}	
else{
document.getElementById("SKK").value = vysledok;
}	
}	
else{
document.getElementById("SKK").value = "";
} 
}
}
//]]></script>
<script type="text/javascript" src="/components/form/check_form.js">
</script>
<script type="text/javascript">
</script>
<h2 class="set">Kalkulačka na prepočet cien z SKK na EUR</h2>
<p class="kurz">
<b><span style="color: #800000; font-family: Arial">Konverzný kurz: 1 EUR = 30,1260 SKK</span></b> 
</p>
<p class="set">
<span style="font-family: Arial"><label class="popisok"><b>SKK</b>:</label> <input name="SKK" onfocus="selectcur('SKK');" onkeyup="stlac('inter')" id="SKK" class="numbers poleKratke" /> </span>
</p>
<p class="set">
<span style="font-family: Arial"><label class="popisok"><b>EUR</b>:</label> <input name="EUR" onfocus="selectcur('EUR');" onkeyup="stlac('inter')" id="EUR" class="numbers poleKratke" /> </span>
</p>
<p class="kurz">
<span style="font-size: 10pt; font-family: Arial">Hodnotu vpíšte do zodpovedajúceho poľa.</span>
</p>
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

Kód: Vybrať všetko

<script type="text/javascript">
//<![CDATA[
kurz = 30.126;
var valuta;
cislo = '';
function clearinp(){
document.getElementById("SKK").value = '';
document.getElementById("EUR").value = '';           
cislo = '';
}
function selectcur(mena){
if (mena == 'SKK'){
document.getElementById("SKK").focus();
valuta = 'SKK';
cislo = '';
}
else{
document.getElementById("EUR").focus();
valuta = 'EUR';
cislo = '';
}
}
function stlac(tlacitko){
if (tlacitko == 'inter'){
if (valuta == 'SKK'){cislo = document.getElementById("SKK").value.replace(',', '.');}
if (valuta == 'EUR'){cislo = document.getElementById("EUR").value.replace(',', '.');}
}
else if (tlacitko == 'kurz') {kurz = parseFloat(document.getElementById("kurz").value);}
else{
cislo = cislo + tlacitko ;       
}
cislo = cislo.replace(' ', '');
//cislo = parseInt(cislo);
if (valuta == 'SKK'){
if(cislo > 0){
var vysledok = (cislo / kurz).toFixed(2);
document.getElementById("SKK").value = cislo; 
if(vysledok == "NaN" || vysledok === undefined || vysledok < 0){
document.getElementById("EUR").value = "sds"; 
}   
else{
document.getElementById("EUR").value = vysledok;
}
}   
else{
document.getElementById("EUR").value = "";
} 
}
else{
if(cislo > 0){
var vysledok = (cislo * kurz).toFixed(2);
document.getElementById("EUR").value = cislo;
//document.getElementById("SKK").value = (cislo * kurz).toFixed(2);
if(vysledok === NaN || vysledok < 0){
document.getElementById("SKK").value = ""; 
}   
else{
document.getElementById("SKK").value = vysledok;
}   
}   
else{
document.getElementById("SKK").value = "";
}
}
}
//]]></script>
<script type="text/javascript" src="/components/form/check_form.js">
</script>
<script type="text/javascript">
</script>
<h2 class="set">Kalkulačka na prepočet cien z SKK na EUR</h2>
<p class="kurz">
<b><span style="color: #800000; font-family: Arial">Konverzný kurz: 1 EUR = <input type="text" name="kurz" id="kurz" onkeyup="stlac('kurz')" value="30.126"> SKK</span></b>
</p>
<p class="set">
<span style="font-family: Arial"><label class="popisok"><b>SKK</b>:</label> <input name="SKK" onfocus="selectcur('SKK');" onkeyup="stlac('inter')" id="SKK" class="numbers poleKratke" /> </span>
</p>
<p class="set">
<span style="font-family: Arial"><label class="popisok"><b>EUR</b>:</label> <input name="EUR" onfocus="selectcur('EUR');" onkeyup="stlac('inter')" id="EUR" class="numbers poleKratke" /> </span>
</p>
<p class="kurz">
<span style="font-size: 10pt; font-family: Arial">Hodnotu vpíšte do zodpovedajúceho poľa.</span>
</p>
rudhas
Light Expert
Light Expert
Používateľov profilový obrázok
Príspevky: 71
Registrovaný: 02 feb 2008, 12:55
Kontaktovať používateľa:

Príspevok od používateľa rudhas »

No tak ti si ina kava..Díky.. :)

//autoeditácia príspevku ( 22 Aug 2008, 18:44 )
Nereaguje to na desatinu čiarku pri českej mene 1,20 je tam kurz ..Skus sa stím pohrat...dík,,
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

rudhas napísal:No tak ti si ina kava..Díky.. :)

//autoeditácia príspevku ( 22 Aug 2008, 18:44 )
Nereaguje to na desatinu čiarku pri českej mene 1,20 je tam kurz ..Skus sa stím pohrat...dík,,
desatinné čiarky sa zadávajú bodkou, nie čiarkou. Môžem ti to upraviť aby to zamenilo čiarku za bodku samé až chceš (ako je to robené aj pri euro a skk):

Kód: Vybrať všetko

<script type="text/javascript">
//<![CDATA[
kurz = 30.126;
var valuta;
cislo = '';
function clearinp(){
document.getElementById("SKK").value = '';
document.getElementById("EUR").value = '';           
cislo = '';
}
function selectcur(mena){
if (mena == 'SKK'){
document.getElementById("SKK").focus();
valuta = 'SKK';
cislo = '';
}
else{
document.getElementById("EUR").focus();
valuta = 'EUR';
cislo = '';
}
}
function stlac(tlacitko){
if (tlacitko == 'inter'){
if (valuta == 'SKK'){cislo = document.getElementById("SKK").value.replace(',', '.');}
if (valuta == 'EUR'){cislo = document.getElementById("EUR").value.replace(',', '.');}
}
else if (tlacitko == 'kurz') {
document.getElementById("kurz").value = document.getElementById("kurz").value.replace(',', '.');
kurz = parseFloat(document.getElementById("kurz").value);}
else{
cislo = cislo + tlacitko ;       
}
cislo = cislo.replace(' ', '');
//cislo = parseInt(cislo);
if (valuta == 'SKK'){
if(cislo > 0){
var vysledok = (cislo / kurz).toFixed(2);
document.getElementById("SKK").value = cislo; 
if(vysledok == "NaN" || vysledok === undefined || vysledok < 0){
document.getElementById("EUR").value = "sds"; 
}   
else{
document.getElementById("EUR").value = vysledok;
}
}   
else{
document.getElementById("EUR").value = "";
} 
}
else{
if(cislo > 0){
var vysledok = (cislo * kurz).toFixed(2);
document.getElementById("EUR").value = cislo;
//document.getElementById("SKK").value = (cislo * kurz).toFixed(2);
if(vysledok === NaN || vysledok < 0){
document.getElementById("SKK").value = ""; 
}   
else{
document.getElementById("SKK").value = vysledok;
}   
}   
else{
document.getElementById("SKK").value = "";
}
}
}
//]]></script>
<script type="text/javascript" src="/components/form/check_form.js">
</script>
<script type="text/javascript">
</script>
<h2 class="set">Kalkulačka na prepočet cien z SKK na EUR</h2>
<p class="kurz">
<b><span style="color: #800000; font-family: Arial">Konverzný kurz: 1 EUR = <input type="text" name="kurz" id="kurz" onkeyup="stlac('kurz')" value="30.126"> SKK</span></b>
</p>
<p class="set">
<span style="font-family: Arial"><label class="popisok"><b>SKK</b>:</label> <input name="SKK" onfocus="selectcur('SKK');" onkeyup="stlac('inter')" id="SKK" class="numbers poleKratke" /> </span>
</p>
<p class="set">
<span style="font-family: Arial"><label class="popisok"><b>EUR</b>:</label> <input name="EUR" onfocus="selectcur('EUR');" onkeyup="stlac('inter')" id="EUR" class="numbers poleKratke" /> </span>
</p>
<p class="kurz">
<span style="font-size: 10pt; font-family: Arial">Hodnotu vpíšte do zodpovedajúceho poľa.</span>
</p>
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Nestačilo to zmeniť len pri zmene reťazca na kurz? (aby sa to zobrazovalo tak, ako to bolo zadané)
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

veď to tak je :)
rudhas
Light Expert
Light Expert
Používateľov profilový obrázok
Príspevky: 71
Registrovaný: 02 feb 2008, 12:55
Kontaktovať používateľa:

Príspevok od používateľa rudhas »

No tak teraz je to kuul :)
kubco2
Light Expert
Light Expert
Príspevky: 37
Registrovaný: 27 máj 2007, 10:33

Príspevok od používateľa kubco2 »

neviem mne sa to vzda dost dlhe na to co to robi, co si myslite?

//edit

Kód: Vybrať všetko

<h2>Kalkulačka na prepočet cien z SKK na EUR</h2>
<span>Konverzný kurz: 1 EUR =</span><input type='text' id='kurz' onkeyup='prepocet()'/><span>SKK</span><br /> 
<span>SKK:</span><input type='text' id='skk' onkeyup='prepocet()'/><br />
<span>EUR:</span><input type='text' id='eur' onkeyup='prepocet()'/>
<script>
kurz.value=30.126
truhla = new Object()
truhla.euro=""
truhla.kurz=""
function prepocet(){
prepocitaj = (eur.value!=truhla.euro) ? skk.value=eur.value*kurz.value : eur.value=skk.value/kurz.value
prepocitaj = (kurz.value!=truhla.kurz) ? eur.value=skk.value/kurz.value : ""
truhla.euro=eur.value
truhla.kurz=kurz.value
}
</script>
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

to bude tym, že ten skript zrejme pôvodne robil niečo iné, a dakto sa ho pokúšal upraviť na eurokalkulačku
Napísať odpoveď