2013-05-09 8 views
0

나는이 있습니다JQuery와 : 출력 값에 대한 작업,하지만 여전히 사용자 유형으로 인쇄 유지 내 HTML에서

$(function(){ 
    $('#earned').keyup(function(){ 
     var $earned = this; 
     $earned = $earned/100; 
     $('#amount').text($(earned).val()+ '.00'); 
    }); 
}); 

내가 쓴 :

<input type="text" name="earned" id="earned"> 
<p>You have: $<span id="amount"></span></p> 

그리고 내 자바 스크립트 파일에

나는이 있습니다 간단한 계산기를위한이 코드. 사용자가 입력 한 내용을 가져 와서 입력 할 때 변경하려면 어떻게해야합니까? 왜 100으로 나눈 값이 작동하지 않습니까? 입력 된 숫자 만 출력됩니다.

+0

이유는 단지'$ ('# 금액')에이 감소하지 텍스트 ($ (이) .val()/100). '? – j08691

답변

1
$('#earned').keyup(function(){ 
    var $earned = parseInt($(this).val(), 10)/100; // .val() here 
    $('#amount').html($earned+ '.00'); // Variable here 
}); 

this는 DOM 입력란을 의미한다. 그래서 그 입력 필드의 .val()의 jQuery 객체가 필요합니다. 문자열을 나눌 수 없으므로이를 정수로 구문 분석하십시오. 그리고 출력을 범위로 설정하는 것보다.

0

var $earned = this;이 문제가됩니다. 대신 var $earned = this.val();을 사용하십시오.

0

이렇게하면됩니다.

$(function(){ 
    $('#earned').change(function(){ 
    var num_val = $(this).val(); 
    if(num_val!="") 
    { 
     num_val = num_val/100 
    } 
    $('#amount').text(num_val+ '.00'); 
    }); 
});