테스트 사이트 - 개발 중인 베타 버전입니다

여분 필드에 값을 이렵하는데 겨로가 값이 이상해서 질문드립니다. 채택완료

Zendsoft 9년 전 조회 3,384

스크립트부분은

 

 

$(function(){

$('#wr_1').keyup(function() {

$('#wr_2').val($(this).val());

$('#wr_3').val($('#wr_2').val()*<?=$config[cf_1]?>);

$('#wr_4').val($(this).val()+$(this).val()*<?=$config[cf_4]?>);

});

});

 

입력부분은 

여분필드 1에 값을 입력받으면 

 

3,4 에 자동으로 입력을 하게 만들었습니다.

 

<input type=text name="wr_3" id="wr_3"  value="" class="frm_input4" maxlength="20"> 

<input type=text name="wr_4" id="wr_4"  value="" class="frm_input4" maxlength="20"> 

 

여기에서 wr_3은 정상적을 결과 값이 나옵니다.

wr_4 의 값이  $config[cf_4] = 0.02 일때

wr_1 에 100을 입력시 102 가 나와야하는데 1002 가 출력됩니다. 

 

$('#wr_4').val($(this).val()+$(this).val()*<?=$config[cf_4]?>);  

이부분에서 + 가 아닌  - 빼기를 하면 98이 정상으로 출력됩니다.

 

정수형이 아닌 문자열로 인식해서 그런거 같은데 

 

$('#wr_4').val($(this).val()+$(this).val()*<?=$config[cf_4]?>); 이 부분을 정수형으로 인식하게 하려면 어찌하면 될가요? 

 


댓글을 작성하려면 로그인이 필요합니다.

답변 3개

채택된 답변
+20 포인트
Rido
9년 전

$('#wr_4').val(($(this).val()*1)+($(this).val()*1)*<?=$config[cf_4]?>);


해당 value값에 *1을해서 간단하게 정수로 만들어 줄 수 있습니다.


로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

SLOOP
9년 전

parseInt( $(this).val() ) 이렇게 감싸주면 int형으로 인식됩니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

9년 전

$('#wr_4').val($(this).val()+$(this).val()*<?=$config[cf_4]?>); 

 

이부분을 바로 이렇게 하시면 안되고

 

변수를 만들어야 해요

 

예를들면


var thisvar = parseInt($(this).val());

var config_4 = parseInt('<?=$config[cf_4]?>');

 

$('#wr_4').val(thisvar+thisvar *config_4); 

 

이런식으로 하는게 도움이 되실거에요


도움되셨으면 체택부탁드려요^^

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인