이 코드에서는 양식을 기반으로 여러 값을 추가하고 새 합계를 만드는 가장 낮은 값을 뺍니다. 코드는 훌륭하게 작동합니다. 제가하고 싶은 것은 바닥에 새 합계를 쓰는 것 대신에 3을 원합니다. 빼기가없는 원래 합계, 하나를 빼는 가장 낮은 가격의 값 그리고 마지막으로 실제 합계를 말합니다. 새로운 총. 지금은 새로운 합계 만 표시합니다.수학 함수 내부에서 특정 값을 어떻게 호출합니까?
예 : $ 5는 스카프, $ 10은 모자, $ 20은 모자입니다. $ 35에 해당하는 모든 값을 더하고 $ 5의 스카프 인 최저값을 뺀 다음 30 달러를 새로 얻습니다. 이것을 하단에 표시하고 싶습니다.
합계 : $ (35) 할인 : $ -5 새로운 합계 : $ (30)
기능은 이미 난 그냥 함수에서 호출하는 방법을 모른다, 모든 값을 파악한다.
// All selected prices are stored on a array
var prices = [];
// A function to remove a item from an array
function remove(array, item) {
for (var i = 0, len = array.length; i < len; i++) {
if (array[i] == item) {
array.splice(i, 1);
return true;
}
}
return false;
}
function calculateSectedDues(checkbox, amount) {
// We add or remove the price as necesary
if (checkbox.checked) {
prices.push(amount);
} else {
remove(prices, amount);
}
// We sum all the prices
var total = 0;
for (var i = 0, len = prices.length; i < len; i++)
total += prices[i];
// We get the lower one
var min = Math.min.apply(Math, prices);
if(min == Infinity) { min = 0; };
// And substract it
total -= min;
document.grad_enroll_form.total.value = total;
}
사용자가 하나의 항목 만 선택하면 어떻게됩니까? 이 경우 disount 후의 총 가격은 0이됩니다 ... – cfs
실제로는 제가하는 일과 실제로는 괜찮지 만 그게 누군가에게 어떻게 문제가 될지 알 수 있습니다. –