У меня есть событие onchange, которое обновляет форму, и в процессе обновления она вызывает функцию для вычисления доставки. Я не знаю, почему, но я получаю следующее сообщение об ошибке при попытке вызова функции:Что вызывает ошибку «Uncaught TypeError: number is not a function»
Uncaught TypeError: number is not a function
Функция, shipping
, выглядит следующим образом:
function shipping(weight)
{
var flat
switch(weight)
{
case 1:
case 2:
case 3:
flat = 32.00;
break;
case 4:
flat = 18.50;
break;
case 5:
flat = 15.80;
break;
case 6:
flat = 14.00;
break;
case 7:
flat = 12.71;
break;
case 8:
flat = 11.75;
break;
case 9:
flat = 11.00;
break;
case 10:
flat = 10.40;
break;
case 11:
flat = 9.91;
break;
case 12:
flat = 9.50;
break;
case 13:
flat = 9.15;
break;
case 14:
flat = 8.86;
break;
case 15:
flat = 8.86;
break;
case 16:
flat = 8.38;
break;
case 17:
flat = 8.18;
break;
case 18:
flat = 8.00;
break;
case 19:
flat = 7.84;
break;
case 20:
flat = 7.70;
break;
} // switch
var flat_fee = flat * weight;
var mile_fee = distance * 0.90;
var shipping_fee = flat_fee + mile_fee;
simpleCart.shippingTest = shipping_fee;
return shipping_fee;
} // shipping
Я м, проходящей в 1
прямо сейчас. Переменная distance
исходит от вызова ajax, который завершен до запуска этой функции. Эта функция выглядит следующим образом:
function get_distance(zip)
{
$.getJSON(
'distance.php',
{ zip:zip },
function(json)
{
distance = json
})
} // get_distance
Я проверил, чтобы убедиться, что переменная distance
установлена.
Консоль говорит, что ошибка неотображаемого типа происходит в строке, где я звоню shipping(1)
. Любые мысли о том, почему это происходит?
Это было! Угу глупые ошибки. Спасибо! – hookedonwinter