<!DOCTYPE html> <html lang="cs"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Výpočet</title> <style type="text/css"> #output { border:2px solid black; padding:5px; } </style> </head> <body> <p>Vstup: <input type="number" id="vstup"></input> => <input type="text" disabled="disabled" id="outputField"></input> </p> <p> <button onclick="akceC2F()">°C->°F</button> <button onclick="akceF2C()">°F->°C</button></p> </p> <script> function akceC2F(){ //parseFloat prevede cokoliv na cislo var vstup = parseFloat(document.getElementById('vstup').value); var vysledek = C2F(vstup); //vystup document.getElementById('outputField').value = vysledek + ''; } function akceF2C(){ //parseFloat prevede cokoliv na cislo var vstup = parseFloat(document.getElementById('vstup').value); var vysledek = F2C(vstup); //vystup document.getElementById('outputField').value = vysledek + ''; } function C2F(teplotaC){ var teplotaF = teplotaC * 9 / 5 + 32; return teplotaF; } function F2C(teplotaF){ var teplotaC = (teplotaF - 32) * 5 / 9; return teplotaC; } </script> </body> </html>
Nedá se kód udělat univerzálnější? Dá!
<!DOCTYPE html> <html lang="cs"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Výpočet</title> <style type="text/css"> #output { border:2px solid black; padding:5px; } </style> </head> <body> <p>Vstup: <input type="number" id="vstup"></input> => <input type="text" disabled="disabled" id="outputField"></input> </p> <p> <button onclick="akce('C2F')">°C->°F</button> <button onclick="akce('F2C')">°F->°C</button></p> </p> <script> function akce(jmenoAkce){ //parseFloat prevede cokoliv na cislo var vstup = parseFloat(document.getElementById('vstup').value); var vysledek; if(typeof window[jmenoAkce] === "function"){ vysledek = window[jmenoAkce](vstup); }else{ throw "Pozadovana akce "+jmenoAkce+" neexistuje" } //vystup document.getElementById('outputField').value = vysledek; } function C2F(teplotaC){ var teplotaF = teplotaC * 9 / 5 + 32; return teplotaF; } function F2C(teplotaF){ var teplotaC = (teplotaF - 32) * 5 / 9; return teplotaC; } </script> </body> </html>