Foros del Web » Programando para Internet » Javascript »

Error en substr a top.frames[0].location

Estas en el tema de Error en substr a top.frames[0].location en el foro de Javascript en Foros del Web. Por qué no se puede utilizar el método SUBSTR en una cadena que contiene la url de un frame? tengo el siguiente ejemplo: Código PHP: ...
  #1 (permalink)  
Antiguo 25/01/2010, 13:07
Avatar de acervantes  
Fecha de Ingreso: agosto-2003
Ubicación: Madrid
Mensajes: 311
Antigüedad: 20 años, 8 meses
Puntos: 1
Error en substr a top.frames[0].location

Por qué no se puede utilizar el método SUBSTR en una cadena que contiene la url de un frame?
tengo el siguiente ejemplo:

Código PHP:
<script>
   var 
str="FOROS DEL WEB";
   
document.write(str+" --- ");
   
document.write(str.substr(10)+" --- ");
   
document.write(str.substr(6,3)+" --- ");
   
str=top.frames[1].location;
   
alert(str);
   
document.write(str.substr(3)+" --- ");
</script> 
que devuelve como resultado:
FOROS DEL WEB --- WEB --- DEL ---
y también el mensaje (alert)= "http:\\www.midominio.com\html\frame_izquierdo.htm "

pero no devuelve ninguna cadena de texto para:
document.write(str.substr(3)+" --- ");

la variable STR no es un string?, tal vez lo considere como array u otro tipo de dato/variable?

le he dado mil vueltas y nada...
__________________
ACervantes

[El éxito dura hasta que alguien las caga; los errores son eternos]
  #2 (permalink)  
Antiguo 25/01/2010, 13:29
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Error en substr a top.frames[0].location

location es un objeto, usa location.href para obtener el resultado deseado
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 25/01/2010, 14:47
Avatar de acervantes  
Fecha de Ingreso: agosto-2003
Ubicación: Madrid
Mensajes: 311
Antigüedad: 20 años, 8 meses
Puntos: 1
De acuerdo Respuesta: Error en substr a top.frames[0].location

gracias por la pronta respuesta David, he modificado sólo esta línea:

Código PHP:
str=top.frames['frame_left'].location.href
cuando termine lo que estoy haciendo lo trataré de subir a un web y les paso el link.
la idea es la siguiente: tengo 3 frames, uno horizontal superior (como una barra de menús), un frame izquierdo que muestra una lista de archivos (dependiendo de la opción elegida en el frame superior) y un frame izquierdo que muestra el contenido del archivo en un iframe; es recursivo, es decir que el frame de la derecha puede tener o no enlaces a ficheros de otro menú, y se actualizan ambos frames, suena a tontera, pero con el ejemplo lo comprenderán y tal vez a alguien le pueda servir. (trabaja con variables globales, parámetros entre frames, etc.), está quedando cool,
muchas gracias por la ayuda; aunque fue algo tonta la pregunta, me hizo confundir mucho que la dirección de la página la muestre con el alert de la variable STR y que luego no pueda extraer una subcadena....

son unos genios tíos!!!, muchas gracias
__________________
ACervantes

[El éxito dura hasta que alguien las caga; los errores son eternos]
  #4 (permalink)  
Antiguo 25/01/2010, 15:18
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Error en substr a top.frames[0].location

Cita:
me hizo confundir mucho que la dirección de la página la muestre con el alert de la variable STR y que luego no pueda extraer una subcadena....
para referencia futura, sucede que el valor argumentado en alert es convertido a string con la funcion toString antes de mostrarse en la ventana modal. o sea, que el interprete invoca automaticamente location.toString(). lo mismo sucede con el resto de los tipos de valores con excepcion de string ya que la funcion requiere que el argumento sea tipo string.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 25/01/2010, 15:58
Avatar de acervantes  
Fecha de Ingreso: agosto-2003
Ubicación: Madrid
Mensajes: 311
Antigüedad: 20 años, 8 meses
Puntos: 1
Respuesta: Error en substr a top.frames[0].location

son unos cracks, muchas gracias, quedo en deuda nuevamente!.
__________________
ACervantes

[El éxito dura hasta que alguien las caga; los errores son eternos]

Etiquetas: substr
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:59.