Привет, я получил ошибку Uncaught Typerror on parseFloat in input type text
и не могу найти решение
Я пытаюсь сделать эту функцию выше, когда делаю parseFloat в поле txtJurosBaixa2, я получаю ошибку, если я помещаю код в консоль браузера, это работает нормально, но в функции он вылетел.
по коду var jrBaixa = isNaN(parseFloat($("#txtJurosBaixa2").val().replace(/\./g, '').replace(',', '.'))) ? 0 : parseFloat($("#txtJurosBaixa2").val().replace(/\./g, '').replace(',', '.'));
эта часть идет хорошо
isNaN(parseFloat($("#txtJurosBaixa2").val().replace(/\./g, '').replace(',', '.'))) ? 0
но этот не
: parseFloat($("#txtJurosBaixa2").val().replace(/\./g, '').replace(',', '.'));
Значение из txtJurosBaixa2 равно «0,00»
Мой код
function CalculaValores () {
var formato = { minimumFractionDigits: 2, style: 'currency', currency: 'BRL'
var vlrFatura = isNaN(parseFloat($("#txtValorFatura").val().replace(/\./g, '').replace(',', '.'))) ? 0 : parseFloat($("#txtValorFatura").val().replace(/\./g, '').replace(',', '.'));
var vlrDesc = isNaN(parseFloat($("#txtDesconto").val().replace(/\./g, '').replace(',', '.'))) ? 0 : parseFloat($("#txtDesconto").val().replace(/\./g, '').replace(',', '.'));
var vlrJuros = isNaN(parseFloat($("#txtJuros").val().replace(/\./g, '').replace(',', '.'))) ? 0 : parseFloat($("#txtJuros").val().replace(/\./g, '').replace(',', '.'));
var tarifa = isNaN(parseFloat($("#txtTarifaBanc").val().replace(/\./g, '').replace(',', '.'))) ? 0 : parseFloat($("#txtTarifaBanc").val().replace(/\./g, '').replace(',', '.'));
var arrend = isNaN(parseFloat($("#txtArredondamento").val().replace(/\./g, '').replace(',', '.'))) ? 0 : parseFloat($("#txtArredondamento").val().replace(/\./g, '').replace(',', '.'));
var descImp = isNaN(parseFloat($("#txtDescontoImposto").val().replace(/\./g, '').replace(',', '.'))) ? 0 : parseFloat($("#txtDescontoImposto").val().replace(/\./g, '').replace(',', '.'));
var jrBaixa = isNaN(parseFloat($("#txtJurosBaixa2").val().replace(/\./g, '').replace(',', '.'))) ? 0 : parseFloat($("#txtJurosBaixa2").val().replace(/\./g, '').replace(',', '.'));
var descBaixa = isNaN(parseFloat($("#txtDescontoBaixa").val().replace(/\./g, '').replace(',', '.'))) ? 0 : parseFloat($("#txtDescontoBaixa").val().replace(/\./g, '').replace(',', '.'));
var vlrTotal = 0;
if (vlrJuros !== 0)
vlrTotal = vlrFatura * (vlrJuros / 100);
else
vlrTotal = vlrFatura;
if (jrBaixa !== 0)
vltTotal = vltTotal * (jrBaixa / 100);
vlrTotal = vlrTotal + tarifa + arrend;
vlrTotal = vlrTotal - (vlrDesc + descBaixa + descImp);
$("#txtValorLiquido").val(vlrTotal.toLocaleString('pt-BR', formato).replace("R$", ""));
}
Я получаю ошибку
Uncaught TypeError: Cannot convert object to primitive value
at parseFloat (<anonymous>)
at Object.CalculaValores (ManutencaoFatura.js:415)
at Object.<anonymous> (ManutencaoFatura.js:399)
at j (DXR.axd?r=1_228-Qa59g:2)
at Object.fireWith [as resolveWith] (DXR.axd?r=1_228-Qa59g:2)
at x (DXR.axd?r=1_228-Qa59g:5)
at XMLHttpRequest.b (DXR.axd?r=1_228-Qa59g:5) CalculaValores @ ManutencaoFatura.js:415 (anonymous) @ ManutencaoFatura.js:399 j @ DXR.axd?r=1_228-Qa59g:2 fireWith @ DXR.axd?r=1_228-Qa59g:2 x @ DXR.axd?r=1_228-Qa59g:5 b @ DXR.axd?r=1_228-Qa59g:5 XMLHttpRequest.send (async) send @ DXR.axd?r=1_228-Qa59g:5 ajax @ DXR.axd?r=1_228-Qa59g:5 $.ajax @ DXR.axd?r=17_42-cb59g:663 RemoverDoc @ ManutencaoFatura.js:376 onclick @ ManutencaoFatura:1
Все значения 0.00