En el resto de paginas me funcionan correctamente los eventos de javascript (onclick) pero en esta no entiendo porque no se procesan al redirigirlos a una funcion javascript.
Es decir, poniendo por ejemplo: onchange="javascript:alert('Hola');" funciona correctamente.
En cambio si hago lo siguiente no funciona: onchange="Saludar('Hola');"
Pongo el codigo, he pensado que igual algo de la pagina le esta fastidiando.
Código HTML:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <link rel="stylesheet" type="text/css" href="../css/EstiloBase.css" /> <title>M&M Informática S.L. .:. Nuevo producto .:.</title> <script src="../js/jquery.js" type="text/javascript"></script> <script src="../js/jquery.validate.js" type="text/javascript"></script> <script type="text/javascript"><!-- $().ready(function() { $("#frmNuevoProducto").validate( { rules: { txtNombre: { required: true } }, messages: { txtNombre: { required: " El campo 'Nombre' es obligatorio." } } }); }); // --> </script> </head> <body> <form id="frmNuevoProducto" name="frmNuevoProducto" method='post' action='../AccionesProductoServlet'> <table> <tr> <td class=tabledataFormat> <label for="lblPrecio">Precio:</label></td> <td class=tabledataFormatValues> <input name="txtPrecio" type="text" class="numbertext" onchange="ShowFinalPrice();" id="txtPrecio" size="50" value="0.00"></td> </tr> <tr> <td class=tabledataFormat> <label for="lblDescuento">Descuento (%):</label></td> <td class=tabledataFormatValues> <input name="txtDescuento" type="text" class="numbertext" onchange="ShowFinalPrice();" id="txtDescuento" size="50" value="0.00"></td> </tr> <tr> <td class=tabledataFormat> <label for="lblImpuesto">Impuesto (%):</label></td> <td class=tabledataFormatValues> <select name="cmbImpuesto" id="cmbImpuesto" class="numbertext" size="1" onchange="ShowFinalPrice();" style="width: 320px"> <option value="0">-- Ninguno --</option> <option value="4">IVA 4%</option> <option value="8">IVA 8%</option> <option value="18">IVA 18%</option> </select> </td> </tr> <tr> <td class=tabledataFormat> <label for="lblPrecioFinal">Precio final:</label></td> <td class=tabledataFormatValues> <input name="txtPrecioFinal" type="text" readonly class="numbertext" id="txtPrecioFinal" size="50" value="0.00" style="border-width: 0px"></td> </tr> </table> <script type="text/javascript" language="javascript"> function ShowFinalPrice() { alert('hola'); var valorPrecio = document.getElementById('txtPrecio').value; var valorDescuento = document.getElementById('txtDescuento').value; var valorImpuesto = document.getElementById('txtImpuesto').value; float descuento = (valorPrecio * valorDescuento)/100 - valorPrecio; float impuesto = (valorPrecio * valorImpuesto)/100 + valorPrecio; float precioFinal = valorPrecio + descuento + impuesto; alert(precioFinal); document.getElementById('txtPrecioFinal').value = precioFinal; } </script> </form> </body> </html>
Gracias.