Retroceder   Foros del Web > Programación para sitios web > Javascript

Respuesta
 
Herramientas Desplegado
Antiguo 14-may-2008, 11:46   #1 (permalink)
PPLPU ha deshabilitado el karma
 
Avatar de PPLPU
 
Fecha de Ingreso: marzo-2008
Mensajes: 24
Pregunta Convertir \ en \\ en JavaScript

Hola, tengo un <input type=file name=a1> en un formulario, y lo que quiero es reemplazar todas las diagonales invertidas ('\') por dos del mismo tipo ('\\') en el contenido de éste. Ya lo intenté con el método replace de String, pero me devuelve error de página por ser un caracter de escape. ¿Algún consejo de cómo lo podría resolver?
Muchas gracias x ayudar
PPLPU está desconectado   Responder Citando
Antiguo 14-may-2008, 11:55   #2 (permalink)
a2a2 tiene algunos puntos positivos de karma
 
Fecha de Ingreso: marzo-2008
Mensajes: 303
Re: Convertir \ en \\ en JavaScript

Has probado a ver si te vale la barra invertida codificada como "entitie" ?: &# 92; ( quitando el espacio)
a2a2 está desconectado   Responder Citando
Antiguo 14-may-2008, 12:00   #3 (permalink)
PPLPU ha deshabilitado el karma
 
Avatar de PPLPU
 
Fecha de Ingreso: marzo-2008
Mensajes: 24
Re: Convertir \ en \\ en JavaScript

oye a2a2 me podrías explicar un poco sobre cómo usar esto? es que no lo he usado
Gracias
PPLPU está desconectado   Responder Citando
Antiguo 14-may-2008, 12:06   #4 (permalink)
a2a2 tiene algunos puntos positivos de karma
 
Fecha de Ingreso: marzo-2008
Mensajes: 303
Re: Convertir \ en \\ en JavaScript

Cualquier caracter se puede poner en HTML expresado como "entitie". El navegador cuando ve la entidad, la sustituye por el caracter correspondiente.
NOTA: los espacios despues del caracter '#' hay que quitarlos, los pongo para que el navegador no lo interprete y muestre el caracter correspondiente.
Por ejemplo, el caracter 'A' es: &# 65; , el caracter 'B' es: &# 66; , el caracter '\' es el &# 92;, etc.

Pues bien, no lo he probado, pero mi sugerencia era que en el replace, en lugar de poner el caracter '\' pongas la entidad &# 92;
a2a2 está desconectado   Responder Citando
Antiguo 14-may-2008, 12:11   #5 (permalink)
PPLPU ha deshabilitado el karma
 
Avatar de PPLPU
 
Fecha de Ingreso: marzo-2008
Mensajes: 24
Cool Re: Convertir \ en \\ en JavaScript

Muy bien, entonces lo voy a probar así, y al rato te cuento que tal.
Y muchas gracias de nuevo
PPLPU está desconectado   Responder Citando
Antiguo 14-may-2008, 12:30   #6 (permalink)
PPLPU ha deshabilitado el karma
 
Avatar de PPLPU
 
Fecha de Ingreso: marzo-2008
Mensajes: 24
Información Re: Convertir \ en \\ en JavaScript

Ya lo probe y no funciona, escribo:

x1=texto.replace('&# 92','X');

ó

x1=texto.replace(&# 92,'X');

en ambos casos sin el espacio y no, en el 2º caso me marca error, creo que porque no le pongo las apóstrofes.
En el 1º lo toma literalmente como una cadena a reemplazar, hasta que encuentre esa cadena la sustituye por X.
¿Algún otro consejo? ¿No existe otra función que acepte las \ como cadena y no como caracter especial?
Incluso intenté hacer la sustitución en Java y pasa lo mismo por ser \, pero por eso quiero convertirlo en la página para enviarlo al servlet ya listo:

C:\\Directorio1\\Directorio2\\Archivo.txt
y así poderlo leer. Gracias x ayudar
PPLPU está desconectado   Responder Citando
Antiguo 14-may-2008, 13:05   #7 (permalink)
PPLPU ha deshabilitado el karma
 
Avatar de PPLPU
 
Fecha de Ingreso: marzo-2008
Mensajes: 24
Cool Re: Convertir \ en \\ en JavaScript

Ya lo he solucionado, solo faltaba poner su equivalencia:

\\ = \
\\\\= \\
Cita:
<html>
<body>
<script>
function aa(texto){
var x1=texto.replace(/\\/g,'\\\\');
document.all.b.value=x1;
}
</script>
<input type=text name=a>
<input type=text name=b>
<input type=button name=p onClick='aa(document.all.a.value)' value='Aceptar'>
</body>
</html>
De esta forma, si la entrada es:
C:\Documents and Settings\Administrador\Mis documentos\Gen\index.html

La salida sería:
C:\\Documents and Settings\\Administrador\\Mis documentos\\Gen\\index.html

El /g que agrego al final de la cadena a buscar es solo para que reemplace en toda la cadena.
Gracias otra vez x ayudar
PPLPU está desconectado   Responder Citando
Respuesta
No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 04:11.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93