Ver Mensaje Individual
  #8 (permalink)  
Antiguo 24/07/2006, 06:27
Avatar de el_javi
el_javi
 
Fecha de Ingreso: marzo-2005
Ubicación: MAdrid
Mensajes: 844
Antigüedad: 20 años
Puntos: 10
Buenas tardes Laurentina (hola caricatos )

He estado revisando el código que has puesto, y antes de nada, he de comentarte que tienes errores de maquetación que deberías de solventar antes.

Te especifico algunos:

1.- En la declaración del body, tienes
Código PHP:
<body bgcolor="#FFFFFF" text="#000000" leftmargin="150" topmargin="80" marginwidth="0" marginheight="0"
como alternativa, que es aceptada por la W3c y validación tidy, te propongo esto
Código PHP:
<body bgcolor="#FFFFFF" text="#000000" style="margin:0px;padding:0px"
2.- En la declaración de tu tr, el cual tiene este código
Código PHP:
<tr>
<
th colspan="2">
<
table width="100%" border="0" cellspacing="0" cellpadding="0" height="32" class="buttonrow">
<
tr>
<
input type="button" name="Submit" value="Terminar">
<
td width="20" align="RIGHT">
</
td>
</
tr>
</
table>
</
th>
</
tr
tienes como error, que dentro del TR no has metido un TD que contenga el INPUT
Debería quedar asi:
Código PHP:
<tr>
                    <
th colspan="2">
                        <
table width="100%" border="0" cellspacing="0" cellpadding="0" height="32" class="buttonrow">
                            <
tr>
                                <
td width="20" align="RIGHT"><input type="button" name="Submit" value="Terminar"></td>
                            </
tr>
                        </
table>
                    </
th>
                </
tr
3.- En la declaración de tu SCRIPT, donde lo incluyes en la página, has de declarar el tipo de elemento que incluyes
Código PHP:
<SCRIPT LANGUAGE="JavaScript" SRC="../utilidades/validaciones.js"></SCRIPT> 
Debería de quedar asi:
Código PHP:
    <script type="text/javascript" language="javascript" src="../utilidades/validaciones.js"></script> 
4.- Las tablas, no tienen como atributo standar la declaración de altura, por lo que debes de declararla dentro del Style de la misma.
Tu código
Código PHP:
<table width="100%" border="0" cellspacing="0" cellpadding="0" height="32" class="buttonrow"
Debería de quedar así
Código PHP:
                        <table width="100%" border="0" cellspacing="0" cellpadding="0" style="height:32px" class="buttonrow"
Finalmente, posteo el cçodigo, limpio, para que lo uses, y lo mires y veas las diferencias.
Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<
html>
<
head>
    <
title>Validacion</title>
    <
script type="text/javascript" language="javascript" src="../utilidades/validaciones.js"></script>
</head>

<body bgcolor="#FFFFFF" text="#000000" style="margin:0px;padding:0px">
<h1>Alta producto</h1>
<form action="ProcesarAltaProducto.php" method="post" name="formulario" id="formulario" onSubmit= "return validar_producto(this.formulario)">
<table bgcolor="#F0F8FF" width="95%" border="0" cellspacing="0" cellpadding="6" align="center">
    <tr>
        <td valign="top" align="left">
            <table width="75%" cellpadding="3" cellspacing="0" border="1">
                <tr class="celdaCampoObligatorio">
                    <th width="30%" align="right"> <label for="name" accesskey="N">Nombre:</label></th>
                    <td width="70%"><input type=TEXT name="Nombre" id="Nombre" maxlength=100 size=50></td>
                </tr>
                <tr class="celdaCampoObligatorio">
                    <th width="30%" align="right"> <label for="field2" accesskey="P">Precio:</label></th>
                    <td width="70%"><!-- <input type=hidden name="label2" value="Precio"> --><input type=TEXT name="Precio" id="Precio" maxlength=50 size=50></td>
                </tr>
                <tr class="celdaCampoNoObligatorio">
                    <th width="30%" align="right"> <label for="question" accesskey="Q">Descripcion:</label></th>
                    <td width="70%"><textarea name="Descripcion" id="Descripcion" rows="10" cols="50"></textarea></td>
                </tr>
                <tr class="celdaCampoObligatorio">
                    <th width="30%" align="right"> <label for="field2" accesskey="P">Catalogado:</label></th>
                    <td width="70%"><blockquote><p>Si<input type="radio" name="Catalogado" value="SiCatalog"></p><p>No<input type="radio" name="Catalogado"value="NoCatalog"></p></blockquote></td>
                </tr>
                <tr class="celdaCampoNoObligatorio">
                    <th width="30%" align="right"> <label for="field2" accesskey="P">Imagen(Introduzca ruta):</label></th>
                    <td width="70%"><input type=TEXT name="Imagen" id="Imagen" maxlength=50 size=50></td>
                </tr>
                <tr>
                    <th colspan="2">
                        <table width="100%" border="0" cellspacing="0" cellpadding="0" style="height:32px" class="buttonrow">
                            <tr>
                                <td width="20" align="RIGHT"><input type="button" name="Submit" value="Terminar"></td>
                            </tr>
                        </table>
                    </th>
                </tr>
            </table>
        </td>
    </tr>
    <tr>
        <td valign="top"><p>&nbsp;</p></td>
    </tr>
</table>
</form>
</body>
</html> 
Mirados estos detalles, vamos al funcionamiento de tu Script

He visto que hay dos fallos importantes:

1.- El tipo de elemento que tienes para enviar el formulario, es un button, y para que salte el evento de onSubmit, debería ser un input type="submit"

2.- El formulario, en el evento onSubmit, le estás pasando como referencia lo siguiente: this.formulario.
Con eso le estas diciendo "valídame this (this significa yo mismo, el objeto donde estás trabajando) yoMismo.formulario" en resumidas cuentas formulario.formulario... y ese objeto no existe.
Debería de ser this "valídame a mi, a yo, el formulario"

Te pongo todo el código limpio, y espero que te sea útil

Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<
html>
<
head>
    <
title>Validacion</title>
    <
script type="text/javascript" language="javascript" src="../utilidades/validaciones.js"></script>
</head>

<body bgcolor="#FFFFFF" text="#000000" style="margin:0px;padding:0px">
<h1>Alta producto</h1>
<form action="ProcesarAltaProducto.php" method="post" name="formulario" id="formulario" onSubmit="return(validar_producto(this))">
<table bgcolor="#F0F8FF" width="95%" border="0" cellspacing="0" cellpadding="6" align="center">
    <tr>
        <td valign="top" align="left">
            <table width="75%" cellpadding="3" cellspacing="0" border="1">
                <tr class="celdaCampoObligatorio">
                    <th width="30%" align="right"> <label for="name" accesskey="N">Nombre:</label></th>
                    <td width="70%"><input type=TEXT name="Nombre" id="Nombre" maxlength=100 size=50></td>
                </tr>
                <tr class="celdaCampoObligatorio">
                    <th width="30%" align="right"> <label for="field2" accesskey="P">Precio:</label></th>
                    <td width="70%"><!-- <input type=hidden name="label2" value="Precio"> --><input type=TEXT name="Precio" id="Precio" maxlength=50 size=50></td>
                </tr>
                <tr class="celdaCampoNoObligatorio">
                    <th width="30%" align="right"> <label for="question" accesskey="Q">Descripcion:</label></th>
                    <td width="70%"><textarea name="Descripcion" id="Descripcion" rows="10" cols="50"></textarea></td>
                </tr>
                <tr class="celdaCampoObligatorio">
                    <th width="30%" align="right"> <label for="field2" accesskey="P">Catalogado:</label></th>
                    <td width="70%"><blockquote><p>Si<input type="radio" name="Catalogado" value="SiCatalog"></p><p>No<input type="radio" name="Catalogado"value="NoCatalog"></p></blockquote></td>
                </tr>
                <tr class="celdaCampoNoObligatorio">
                    <th width="30%" align="right"> <label for="field2" accesskey="P">Imagen(Introduzca ruta):</label></th>
                    <td width="70%"><input type=TEXT name="Imagen" id="Imagen" maxlength=50 size=50></td>
                </tr>
                <tr>
                    <th colspan="2">
                        <table width="100%" border="0" cellspacing="0" cellpadding="0" style="height:32px" class="buttonrow">
                            <tr>
                                <td width="20" align="RIGHT"><input type="submit" name="Submit" value="Terminar"></td>
                            </tr>
                        </table>
                    </th>
                </tr>
            </table>
        </td>
    </tr>
    <tr>
        <td valign="top"><p>&nbsp;</p></td>
    </tr>
</table>
</form>
</body>
</html> 
Siento mucho haberme explayado tanto, pero creo que había que detallar los errores de concepto.

Si sigues teniendo problemas, no dudes en preguntarnos.

Saludos a tod@s


Última edición por el_javi; 24/07/2006 a las 06:43