2017-12-26 4 views
-1

나는 내 드롭 다운 옵션 선택을 계산하기 위해 양식에 계산기를 가지고 있습니다.폼 계산기 스크립트 기본 가격로드되지 않음 OnLoad

<span id="item-price">0</span> 

문제는, 내가 페이지에서 얻을 그러나 때, 60에서 baseprice이 자사의 제로 :

$(function() { 
    $("select.calculate").on("change", calc); 
    $("input[type=checkbox].calculate").on("click", calc); 

    function calc() { 
    var basePrice = 60; 
    newPrice = basePrice; 
    $("select.calculate option:selected, input[type=checkbox].calculate:checked").each(function() { 
     newPrice += parseInt($(this).data('price'), 10); 
    }); 

    newPrice = newPrice.toFixed(2); 
    $("#item-price").html(newPrice); 
    $("#item_price_val").val(newPrice); 

    } 
}); 

및 HTML에

같이 내가 가지고있는 번호를 얻을 수 있습니다. 내가 선택을 할 때만 가격이 올라갈거야. 페이지로드시 처음부터 baseprice를 표시하려면 어떻게합니까?

기본 가격으로 시작해야하므로 선택하지 않아도되므로 제출 양식을 클릭하면 60 달러 대신 0 달러가 제출됩니다.

+0

문서가 준비되면 'calc()'를 호출 할 수 있습니다. – RRK

+0

가 작동하지 않는 것 같습니다. 전화를 어디서 어떻게 추가 하시겠습니까? –

+0

(php) 코드가 없으면 사용자가 따라 다니는 태그를 사용하지 마십시오. html 태그/양식도 동일합니다. 관련 코드는 여기에 없습니다. –

답변

0
var basePrice = 60; 
$(document).ready(function() { 
$("select.calculate").on("change", calc); 
$("input[type=checkbox].calculate").on("click", calc); 
$("#item-price").html(basePrice); 
$("#item_price_val").val(basePrice); 
}); 
function calc() { 
newPrice = basePrice; 
$("select.calculate option:selected,input[type=checkbox].calculate:checked").each(function() { 
    newPrice += parseInt($(this).data('price'), 10); 
}); 
newPrice = newPrice.toFixed(2); 
$("#item-price").html(newPrice); 
$("#item_price_val").val(newPrice); 
} 

코드의 업데이트 된 버전을 사용하십시오.

+0

감사. 그게 효과가 있었어. 그래도 약간의 문제가 있지만 페이지로드시 "$ 60"으로 표시되지만 양식 선택을 업데이트하면 항상 "$ 80.00"으로 표시됩니다. 그렇지 않으면 어떻게 시작할지를 결정하지 않는 한 .00 소수점을 제거 할 수 있습니까? "$ 60"대신 "$ 60.00"에서 가져옵니다. 나는 내 기본 가격에 60.00을 추가하려고 노력했다. –

+0

이 속성이있는 chaeck $ (this) .data ('price'). 그게 돌아 오는거야? 또는 newPrice = newPrice.toFixed (0)를 사용하십시오. 추가 포인트 값이 제거됩니다. –

+0

고마워. 두 번째 작품. –