2012-03-02 4 views
0

코드가 '#orginalAddon'이라는 숨겨진 입력 필드에서 가격 값을 얻으면 추가 애드온 비용이이 값에 추가되고 결과가 사용자에게 표시됩니다. '# adjonPrice'의 계산 된 총 출력이 '#orginalAddon'값이 1,000 이상인 경우 잘리는 것으로 나타납니다. 다음과 같이jQuery를 사용할 때 가격 값이 잘리지 않음 parseFloat

코드는 다음과 같습니다 당신이 수천을 분리하는 쉼표를 넣어 경우

$(".add_div").click(function(){ 
       $('#addons_loader').html('<div id="resloading"><img src="<?=BASE_URL?>/img/ajax-loader.gif" /></div>'); 

       var id = $(this).attr('rel'); 
       $('#AddOnAddForm input#AddOnId').attr('value',id); 

       /* load addon into addons li (session) */ 
       $.getJSON('<?=BASE_URL?>/res/addons_add/'+id, function(data) { 

        $('#addons_ajax').html(''); 
        $('#addons_loader').html(''); 

        var items = []; 
        var totalprice = 0; 

        // Generate elements for right side grey box listing addons 
        $.each(data, function(key, obj) { 
         items.push('<li id="' + obj.id + '">' + obj.title + '€' + obj.price + '</li>'); 
         totalprice += parseFloat(obj.price); 
        }); 

        $('<ul/>', { 
         'id': 'addons_list', 
         html: items.join('') 
        }).appendTo('#addons_ajax'); 

        $("#addonPrice").html(parseFloat($("#orginalAddon").val()) + totalprice); 

       }); 

어떤 조언을 주시면 감사 ...

+1

입력/출력의 예는 무엇입니까? – mplungjan

+0

입력하신 내용에 쉼표가 있습니까? – dezso

답변

3

, 그것을

을 제거 예 :

parseFloat(obj.price.replace(/,/g,'')); 

편집 :

입력란에

입력 :

parseFloat($("#orginalAddon").val().replace(/,/g,'')) 
+0

"#orginalAddon"에 2,701, "#addonPrice"에 20을 입력하면 결과가 22 –

+0

입니다. parseFloat ($ ("# orginalAddon"), val(). replace (/,/g, ''))는 완벽하게 작동합니다. 덕분에 :) 제안을 한 모든 사람들에게 감사드립니다. –

관련 문제