Foros del Web » Programando para Internet » ASP Clásico »

Problema con split

Estas en el tema de Problema con split en el foro de ASP Clásico en Foros del Web. Hola, tengo una pagina que recoge ciertos datos del usuario, los mete en una variable y la paso al frame inferior por url. Xdefecto sino ...
  #1 (permalink)  
Antiguo 21/09/2010, 00:35
 
Fecha de Ingreso: agosto-2010
Mensajes: 29
Antigüedad: 13 años, 8 meses
Puntos: 0
Problema con split

Hola, tengo una pagina que recoge ciertos datos del usuario, los mete en una variable y la paso al frame inferior por url.
Xdefecto sino se pulsa otra cosa pasaria esto:

encabezado.value = "Fecha,Area,Turno,Eventos";

window.parent.frames("bottom").navigate("resultado .asp?sql=" + sql.value + "&encabezado=" + encabezado.value);

En la otra página recibo esos datos y necesito separarlos por la coma. El problema sq la función split no funciona. El codigo es el siguiente:

<%

function dibuja_tabla(sql, conexion, campo) {
var titulos = Request.QueryString("encabezado");
Response.Write("Variable: " + titulos);
//var enc = "Fecha,Area,Turno,Eventos";
var titulos2 = titulos.split(",");
Response.Write("-->prueba: " + titulos2[1]);
}
%>

la variable comentada enc, la puse para hacer pruebas, si pongo
var titulos2 = enc.split(",");
el split funciona por lo q supongo q está bien, pero yo lo que necesito que separe es el campo titulos que viene del frame del formulario. Al ejecutar esto el error me lo da en la linea del split y me dice:

Microsoft JScript runtime error '800a01b6'

Object doesn't support this property or method

¿como puedo hacerle el split a los datos que vienen en el QueryString?

Gracias¡¡
  #2 (permalink)  
Antiguo 21/09/2010, 07:03
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 3 meses
Puntos: 146
Respuesta: Problema con split

Si todo ese código lo tienes en una sola página supongo que eso te pasa por que cuando se ejecuta el ASP el Request.QueryString("encabezado") no existe, por lo que al no poder determinar el tipo de objeto te marca error.

Para poder saber con mayor certeza necesitaría saber el flujo de tu programa
  #3 (permalink)  
Antiguo 21/09/2010, 08:06
 
Fecha de Ingreso: agosto-2010
Mensajes: 29
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Problema con split

Pues tengo una página compuesta por 2 frames.
En el frame superior (llamado eventos.asp) hay un formulario, cuando pulso el boton enviar cargo el frame de abajo con el comando:

window.parent.frames("bottom").navigate("resultado .asp?sql=" + sql.value + "&encabezado=" + encabezado.value);


El frame inferior (llamada resultado.asp) se encarga de recoger esos datos para realizar una búsqueda en una base de datos. El body del ASP es el siguiente:

<%

function dibuja_tabla(sql, conexion, campo) {
var titulos = Request.QueryString("encabezado");
Response.Write("Variable: " + titulos);
var enc = "Fecha,Area,Turno,Eventos";
var titulos2 = titulos.split(","); //aqui da error
Response.Write("-->prueba: " + titulos2[1]);
Response.Write("<table id=listado width=100% border=0>");
//sacaria la tabla
Response.Write("</table>");
}


// Comprueba si el código viene con la select a ejecutar
// y si se está ordenando por algún campo

function comprueba_query(campo){
if (Request.QueryString("sql").Count != 0){
var sql = Request.QueryString("sql") + "";
Response.Write("sql:" + sql);
var cadena = new RegExp("%20");
while (cadena.exec(sql) != null){
var sql = sql.replace(cadena, " ");
}
var cadena = new RegExp("~");
while (cadena.exec(sql) != null){
var sql = sql.replace(cadena, "#");
}
var cn = slibBD_conexionACC("base");
if (Request.Form("orden").Count == 0){
dibuja_tabla(sql, cn);
}
else{
dibuja_tabla(sql,cn,Request.Form("orden"));
}
cn.Close;
}
}

comprueba_query();
%>

¿se te ocurre como podria hacerlo para que funcionara?
  #4 (permalink)  
Antiguo 23/09/2010, 02:16
 
Fecha de Ingreso: agosto-2010
Mensajes: 29
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Problema con split

Por si a alguien le interesara lo solucioné añadiendo la linea:
var sql = Request.QueryString("sql") + "";

Etiquetas: split
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 11:42.