Descuida, acá estamos para ayudar:
Esta sentencia
Es igual a escribir
Es decir, cuando tu no ingresas un valor en CD el campo vendrá con valor vació (""), por lo que en el JS deberás decirle que ese vacio tiene que tomarlo como un 0. Por lo que tu código quedará
Código Javascript
:
Ver original<script>
function margenbruto(){
var D = document.getElementById('IN').value;
var E = document.getElementById('CD').value;
var F = document.getElementById('MB');
E = E==""?0:E
F.value = ((parseFloat(D) - parseFloat(E)))
}
</script>
En palabras simples el " E = E==""?0:E " quiere decir que si E es vacio tome el valor de 0, si no que tome el valor que trae.