Отображение десятичных знаков в футах и ​​дюймах (JavaScript) - PullRequest
5 голосов
/ 25 января 2010

Оригинальный вопрос: этот бит кода JavaScript будет конвертировать сантиметры в футы. Но ноги отображаются в десятичных числах, я бы хотел, чтобы они отображались как 5'10 вместо 5.83.

РЕШЕНИЕ:

<script type="text/javascript">
function start(){
document.getElementById('hauteur_cm').onmouseup=function() {
if(isNaN(this.value)) {
   alert('numbers only!!');
   document.getElementById('hauteur_cm').value='';
   document.getElementById('hauteur_pieds').value='';
   return;
 }
var realFeet = this.value*0.03280839895;
var feet = Math.floor(realFeet);
var inches = Math.round((realFeet - feet) * 12);
var text = feet + "'" + inches + '"';
   document.getElementById('hauteur_pieds').value=text;
  }
 }
if(window.addEventListener){
   window.addEventListener('load',start,false);
 }
else {
if(window.attachEvent){
   window.attachEvent('onload',start);
  }
 }
</script>

Ответы [ 2 ]

7 голосов
/ 25 января 2010

Вы можете разделить десятичные значения в футах и ​​дюймах следующим образом:

var realFeet = 5.83;

var feet = Math.floor(realFeet);
var inches = Math.round((realFeet - feet) * 12);

Затем вы можете собрать их в любом формате:

var text = feet + "'" + inches + '"';
1 голос
/ 25 января 2010
function feetAndInches(decimal) {
  return Math.floor(decimal) +
    "'" +
    (12 * (decimal - Math.floor(decimal))) +
    '"';
}
...