Estoy tratando de usar la función quitaacentos() en una página de envío de formulario y me da error.
La página que envía el form
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Documento sin título</title>
- <script language="javascript">
- function quitaacentos(t){
- á="a";é="e";í="i";ó="o";ú="u";
- acentos=/[áéíóú]/g;
- return t.replace(acentos,
- function($1){
- return eval($1)
- }
- );
- }</script>
- </head>
- <form action="envio.asp" method="post">
- Contenido del mensaje:
- <input name="ibody" type="text" value="" />
- <label>
- <input type="submit" name="button" id="button" value="Enviar" />
- </label>
- </form>
- </body>
- </html>
... y ésta la página que recibe y envía por correo los datos. Olvidarse de la parte del envío de correo, lo que me interesa es el error de la línea de la función elimina_acentos()
- <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <script language="javascript">
- <script language="javascript">
- function quitaacentos(t){
- á="a";é="e";í="i";ó="o";ú="u";
- acentos=/[áéíóú]/g;
- return t.replace(acentos,
- function($1){
- return eval($1)
- }
- );
- }
- </script>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Documento sin título</title>
- </head>
- <body>
- <%
- Dim cbody, n, p1
- cbody = Request("ibody")
- response.write(cbody)
- cbody = quitaacentos(cbody) //Aqui esta el error. Linea 65
- response.write(cbody)
- For Each n In Request.Form
- cBody = cBody & n & ": " & Request.Form(n) & chr(13)
- Next
- Set oCDO = Server.CreateObject("CDONTS.NewMail")
- 'Asignamos las propiedades al objeto
- oCDO.From = "[email protected]"
- oCDO.To = "[email protected]"
- oCDO.Subject = "mensaje de prueba"
- oCDO.Body = cBody
- 'oCDO.Cc = "[email protected];[email protected]"
- 'oCDO.Bcc = "[email protected]"
- 'oCDO.MailFormat = 0
- oCDO.Send
- Set oCDO = Nothing 'Liberar...
- 'Mostramos mensaje de que seenvió con éxito.
- Response.Write "¡Se envió Ok, qué fácil!!"
- %>
- </body>
- </html>
El error que da es este:
- Código: Seleccionar todo
Error de Microsoft VBScript en tiempo de ejecución (0x800A000D)
No coinciden los tipos: 'Elimina_acentos'
linea 65
Salu2 a todos y agradecido de antemano.
Madrazo.