Problemas entre formularios y java script
Epero que alguien me pueda ayudar estoy teniendo algún problema para mostrar resultados de cuentas matemáticas resultas mediante javascript en un formulario y lo he probado de distintas maneras. Mediante un archivo.js externo como hago otros cálculos en ora página pertnecinte al mismo sitio web que funcionan perfecto y probé colocando el script directo en la página. Y me salta el mismo error ej frm. LblCantid is undefined. Algún elemento del formulario los agarra bien. Les dejo en 1er lugar el código del script y más abajo les dejo solo la parte del código que corresponde al formulario. Esta la parte que, pasa los valores al script y la parte que debe recibir los resultados y mostrarlos en pantalla:
1 código script
El switch es porque va a ver varios t4ipos de hormigón pero por el momento estoy trabajan con 1 solo
<script type="text/javascript">
function Hormigon (frm)
{
calcular = true;
alert("Estoy dentro de hormigon hoja local");
alert("El volumen a construir es de: " + frm.txtVolumen.value);
var tipo;
var proporcionCemento;
var proporcionArena;
var proporcionPiedra;
var desperdicioCemento;
var desperdicioArena;
var desperdicioPiedra;
var desperdicioAgua;
var precioArena;
var precioPiedra;
var precioCemento;
var cantArena;
var cantPiedra;
var cantCemento;
var cementoporbulto;
var total;
var volumen;
var bultos = 10.5;
tipo = frm.SelTipo.value;
alert(tipo)
//calcular=false;
switch (tipo)
{
case "3:2:1":
proporcionCemento = 350;
proporcionArena = 0.56;
proporcionPiedra = 0.84;
desperdicioCemento = 0.05;
desperdicioArena = 0.05;
desperdicioPiedra= 0.05;
alert(proporcionCemento);
// Cemento
// asumiendo que cada bulto es de 50kg
bultos = proporcionCemento / 50 ;
//alert("La cantidad de bultos son " + bultos);
bultos = (bultos * 1.05);
// alert("La cantidad de bultos con desperdicio son: " +bultos);
//bultos = math.round(1.62356);
//alert("El numero de bultos despues del redondeo es de:" +bultos);
//alert(frm.lblCantidad.value)
frm.lblCantidad.value = bultos;
frm.lblPrecio.value = 8;
break;
default:
alert("El tipo de hormigon elegido es invalido");
break;
}
//return calcular;
}
</script>
Código de las 2 partes del mismo formulario
Parte que envía
<form name='frmHormigon' method='POST'>
<table id='Form_de_materiale' align='center'>
<tr>
<td> Tipo de Hormigón </td>
<td>
<!-- Después lo haré mediante php -->
<select class='Selector' name='SelTipo'>
<option value='1:2:2'> Hormigon 1:2:2 </option>
<option value='1:2:3'> Hormigon 1:2:3 </option>
<option value='1:3:3'> Hormigon 1:3:3 </option>
<option value='1:3:6'> Hormigon 1:3:6 </option>
<option selected value='3:2:1'> Hormigon 3:2:1</option>
</select>
</td>
<td> Velumen en m <sup>3</sup> <input type='text' name='txtVolumen'/> </td>
<td> <input type='button' name='btnCalcular' value='Calcular' onclick='Hormigon(this.form);'> </td>
<td> </td>
</tr>
</table>
Parte que recibe y muestra:
<table width='600px' align='center'>
<tr>
<td colspan='4' class='Tabla_titulo'> Presupuestar </td>
</tr>
<tr>
<td width='200px' class='Tabla_titulo'> Material </td>
<td width='200px' class='Tabla_titulo'> Cantidad </td>
<td width='200px' class='Tabla_titulo'> Precio Uni </td>
<td width='200px' class='Tabla_titulo'> Total </td>
</tr>
<tr>
<td width='200px' class='Label' width='200px'> <label name='lblMaterial'></label> </td>
<td width='200px' class='Label' width='200px'> <label name='lblCantidad'></label> </td>
<td width='200px' class='Label' width='200px'> <label name='lblPrecio'></label> </td>
<td width='200px' class='Label' width='200px'> <label name='lblTotal'></label></td>
</tr>
</form>
</table>