Hola.
Bueno, varias cosas que te sobran y que te faltan.
1.- No abres el <body>. Fijate que lo estas cerrando la primera vez que le haces refencia
Cita: ...
</script>
</head>
</body>
<form method="POST" action="agrega_noticia.asp">
...
2.- Repites dos veces esta línea:
<form method="POST" action="agrega_noticia.asp">
Una sobra.
3.- Cierras el body antes de hora.
Cita: ...
<input type="text" name="copete" size="40">
</p>
</body>
<form name="reduce">
...
4.- No cierras el primer form.
Cita: ...
<input type="text" name="copete" size="40">
</p>
</body>
<form name="reduce">
...
Esto cámbialo por:
Cita: ...
<input type="text" name="copete" size="40">
</p>
</form>
<form name="reduce">
...
Bueno, concluyendo. El código corregido es este:
<html>
<head>
<script language="JavaScript">
// Limita los caracteres a introducir en un TextArea y cuenta los que quedan para llegar al final. En este caso, son 200. Para modificar el tamaño, solo hay que cambiar este valor en 'limite(this,200)' y en 'value=200' por el deseado.
function limite(que,cuanto)
{
var v=que.value
if(v.length>cuanto) que.value=v.substring(0,cuanto)
else document.reduce.cont.value=cuanto-v.length
}
</script>
</head>
<body>
<p><br>
<form method="POST" action="agrega_noticia.asp">
<p>Categoria:</p>
<p><input type="text" name="Categoria" size="40"> </p>
<p>Titulo:<br>
<input type="text" name="titulo" size="40">
</p>
<p>Copete:<br>
<input type="text" name="copete" size="40">
</p>
</form>
<form name="reduce">
<textarea onKeyDown="limite(this,200)" onKeyUp="limite(this,200)" name="registro" rows=15 cols=45 ></textarea>
<input name="cont" type="text" size="3" value="200" readonly>
</form>
</body>
</head>
</html>