las referencias directas no son soportadas por la mayoría de los navegadores, debes usarlo así, con colecciones:
document.
forms['datos].
elements['ladoa'].value.length
además que sentido tiene hacer doble trabajo: para que conviertes primero a flotante, si necesitas primero validar si están vacios???
así es más eficiente:
Código Javascript
:
Ver original<script type="text/javascript" languaje="JavaScript">
function sumar()
{
var ladoa=document.getElementById('ladoa'); //o document.forms['datos'].elements['ladoa'];
var ladob=document.getElementById('ladob');
var ladoc=document.getElementById('ladoc');
if ((ladoa.value == "") || (ladob.value == "") || (ladoc.value == "") )
{
alert("EXISTEN VALORES NO INGRESADOS");
return false;
}
var fladoa = parseFloat(ladoa.value);
var fladob = parseFloat(ladob.value);
var fladoc = parseFloat(ladoc.value);
if ( isNaN(fladoa) || isNaN(fladob) || isNaN(fladoc) )
{
alert("TODOS LOS CAMPOS DEBEN SER VALORES NUMERICOS");
return false;
}
if ((fladoa <= 0) || (fladob <= 0) || (fladoc <= 0))
{
alert("SOLO PUEDE INGRESAR VALORES POSITIVOS");
return false;
}
ladoc.value = document.forms['datos'].elements['raiz'].value = Math.sqrt(fladoc);
var perimetro=fladoa + fladob + fladoc;
document.getElementById('perimetro').value=perimetro;
}
</script>