. Я пытаюсь добавить налог, если этот флажок установлен или не добавлен, если он также не установлен, если флажок установлен, чтобы добавить налог и наоборот, чтобы снять налог, если он не установлен. Мой код ниже, но я получаю сообщение об ошибке updatetotal
не является функцией. из того, что я прочитал, это должно работать, но это не так. игнорируйте $j
это настраивает для JQuery конфликтов на базеЕсли флажок установлен, сделайте это, сделайте это. Не работает.
$j(function() {
$j(document).on('keyup', '#addit_fee_cost_net', function() {
updateTotal();
});
var updateTotal = function() {
addit_fees = parseFloat($j('#addit_fee_cost_net').val());
var output_total = $j('#addit_fee_cost_gross');
var total = addit_fees;
if(isNaN(total)){
total=0.00;
}
output_total.val(total.toFixed(2));
};
$j(document).on('change','#addit_taxable_flag', function() {
if($j(this).is(":checked")) {
updateTotal();
var updateTotal = function() {
addit_fees = parseFloat($j('#addit_fee_cost_net').val());
var output_total_inc_vat = $j('#addit_fee_cost_gross');
var tax = parseFloat($j('#tax_id').val());
var total_inc_vat = addit_fees * (tax + 1);
if(isNaN(total_inc_vat)){
total_inc_vat=0.00;
}
output_total_inc_vat.val(total_inc_vat.toFixed(2));
};
} else {
updateTotal();
var updateTotal = function() {
addit_fees = parseFloat($j('#addit_fee_cost_net').val());
var output_total = $j('#addit_fee_cost_gross');
var total = addit_fees;
if(isNaN(total)){
total=0.00;
}
output_total.val(total.toFixed(2));
};
}
});
});
Я просто добавил ниже ответы, так я теперь не получаю undifined ошибки, но если проверено разве работает так ничего не меняет на изменениях.
$ J (функция() {
$j(document).on('keyup', '#addit_fee_cost_net', function() {
updateTotal();
});
var updateTotal = function() {
addit_fees = parseFloat($j('#addit_fee_cost_net').val());
var output_total = $j('#addit_fee_cost_gross');
var total = addit_fees;
if(isNaN(total)){
total=0.00;
}
output_total.val(total.toFixed(2));
};
$j(document).on('change','#addit_taxable_flag', function() {
if($j(this).is(":checked")) {
var updateTotal = function() {
updateTotal();
addit_fees = parseFloat($j('#addit_fee_cost_net').val());
var output_total_inc_vat = $j('#addit_fee_cost_gross');
var tax = parseFloat($j('#tax_id').val());
var total_inc_vat = addit_fees * (tax + 1);
if(isNaN(total_inc_vat)){
total_inc_vat=0.00;
}
output_total_inc_vat.val(total_inc_vat.toFixed(2));
};
} else {
var updateTotal = function() {
updateTotal();
addit_fees = parseFloat($j('#addit_fee_cost_net').val());
var output_total = $j('#addit_fee_cost_gross');
var total = addit_fees;
if(isNaN(total)){
total=0.00;
}
output_total.val(total.toFixed(2));
};
}
});
});
Любая помощь будет высоко оценена как независимо от того, как я пытаюсь форматировать это я не могу заставить его работать я только попробовал ниже формат, но ничего не пожары. Большое спасибо заранее
function updateTotal1(checked){
if(checked == true){
var updateTotal1 = function() {
updateTotal1();
addit_fees = parseFloat($j('#addit_fee_cost_net').val());
var output_total_inc_vat = $j('#addit_fee_cost_gross');
var tax = parseFloat($j('#tax_id').val());
var total_inc_vat = addit_fees * (tax + 1);
if(isNaN(total_inc_vat)){
total_inc_vat=0.00;
}
output_total_inc_vat.val(total_inc_vat.toFixed(2));
};
} else {
var updateTotal1 = function() {
updateTotal1();
addit_fees = parseFloat($j('#addit_fee_cost_net').val());
var output_total = $j('#addit_fee_cost_gross');
var total = addit_fees;
if(isNaN(total)){
total=0.00;
}
output_total.val(total.toFixed(2));
};
};
};
});
$j('#addit_taxable_flag').on('change', function(){
updateTotal($j(this).is(':checked'));
});
определяет соответствующую функцию functionTotal() 'вне кода обработчика события. Или просто избегайте использования какой-либо другой вспомогательной функции и сами пишете логику расчета. – vijayP
Вы указали 'updateTotal()'? + какое значение хранится в updateTotal var? функция не возвращает anythng –
Я разместил полный код выше, а не только ту часть, с которой у меня возникли проблемы. насколько я вижу, общее количество обновлений было определено вне обработчика – troggy69