Comunidad de diseño web y desarrollo en internet online

longitud de un texto

Citar            
MensajeEscrito el 17 Jul 2007 08:18 pm
Estoy intentando modificar reescribir un XML con los datos que se van modificando en un tree, y necesito como ultimo detalle para conseguirlo, cambiar un pequeño detalle, al crear un nuevo nodo el resultado en el XML es:
<node label="Prueba" /> y necesito que sea <node label="Prueba" >

no soy capaz de leer la longitud de los nodos para quitar el caracter que me sobra, le dí mil vueltas a la ayuda y al foro y no hay manera, aqui os pongo el código y el resultado de los TRACE para que si podeis , me echeis un cable.

Código :

  xx1=""
     for (i=0;i<miArbol.length;i++) {
       var xx:String=miArbol.selectedNode=miArbol.getTreeNodeAt(i)
   x2=miArbol.getIsBranch(miArbol.getTreeNodeAt(i))
   
    if (x2=true){
      var xc1:String=miArbol.getTreeNodeAt(i)
               trace (xc1) // [b]devuelve el tecto correctamente[/b]
                trace(xc1.length)// [b]devuelve UNDEFINIDED[/b]
      trace(xc1.length-1)//[b]devuelve NaN[/b]
         var xxx:String=xx.substr(1,5);
         trace(xxx)
     }
      
      xx1=xx1 add xx
   }


Saludos y gracias por todo
:crap:

Por feisimo

66 de clabLevel



 

firefox
Citar            
MensajeEscrito el 17 Jul 2007 09:56 pm
Si es solo desacerte del "/" seria xc1.split("/").join("")
Saludos

Por deker

55 de clabLevel



 

msie7
Citar            
MensajeEscrito el 17 Jul 2007 09:58 pm
Intento hacerlo de otra forma, llevo el contenido de la cadena de texto a un TEXTBOX, cuento el numero de caracteres, hasta aqui bien, intento sacar una cadena con substring paro tampoco funciona.. no se, seguramente estoy mayor para estas cosas

Código :

      texto.text=xx1 //..... Bien
      var xx3:Number=texto.length-3// cojo*udo, todo bien
      xx4=texto.substring(xx3,2)// OHHHHH xx4 en el trace=UNDEFINIDED


algo no está funcionando, supongo que mi cerebro. alguna sugerencia ó solucion a mis problemas, exceptutando la del psiquiatra ?????

Saludos

Por feisimo

66 de clabLevel



 

firefox
Citar            
MensajeEscrito el 17 Jul 2007 10:10 pm
Ya somos 2 k vamos viejos y no tenemos cabeza para estas cosas, pero hay k ir tirando ;)
texto = "Hola";
trace(texto);
var xx1:Number = (texto.length-3);
trace(xx1);
var xx1 = texto.substring(xx, 3, 2);
trace(xx1);
var xx1 = texto.slice(1);
trace(xx1);
var xx1 = texto.slice(-1);
trace(xx1);
Saludos

Por deker

55 de clabLevel



 

msie7
Citar            
MensajeEscrito el 17 Jul 2007 10:13 pm
Gracias deker por tu respuesta, estoy probando lo que me dices, pero me sigue con el mensaje "UNDEFINIDED" cuando intendo

Código :

trace(xc1.split("/").join(""))


lo hago de esta forma:

Código :

xx1=""

     for (i=0;i<miArbol.length;i++) {

       var xx:String=miArbol.selectedNode=miArbol.getTreeNodeAt(i)

   x2=miArbol.getIsBranch(miArbol.getTreeNodeAt(i))

   

    if (x2=true){

      var xc1:String=miArbol.getTreeNodeAt(i)
               trace(xc1.split("/").join("")) // Solucion de Deker
               trace (xc1) // [b]devuelve el texto correctamente[/b]

                trace(xc1.length)// [b]devuelve UNDEFINIDED[/b]

      trace(xc1.length-1)//[b]devuelve NaN[/b]

         var xxx:String=xx.substr(1,5);

         trace(xxx)

     }




xx1=xx1 add xx

}

Por feisimo

66 de clabLevel



 

firefox
Citar            
MensajeEscrito el 17 Jul 2007 10:21 pm
var xc1 = "<node label=Prueba />";
trace(xc1.split("/").join("")); //<node label=Prueba >
trace(xc1); //<node label=Prueba />

Bueno pos nada k tengas suerte.
Saludos

Por deker

55 de clabLevel



 

msie7
Citar            
MensajeEscrito el 17 Jul 2007 10:29 pm
Gracia tio, vamos a ver que tal
Saludos...

Por feisimo

66 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Jul 2007 09:17 pm
Este codigo, es perfecto

Código :

var xc1 = "<node label=Prueba />";
trace(xc1.split("/").join("")); //<node label=Prueba >
trace(xc1); //<node label=Prueba />


pero realmente la variable me devuelve lo siguiente:

Código :

<node label="Prueba" />


el problema son las dobles comillas.

Solución:
aunque la variable está declarada en un principio como STRING, hay que ser "cansino" y volverlo a decir antes de aplicarle ninguna función referente al tratamiento de cadenas.

Código :

xc1=String(xc1)


y asunto resuelto, las dobles comillas pasan desapercibidas y todo vuelve a la normalidad..

Saludos y gracias por estar ahi...

Por feisimo

66 de clabLevel



 

firefox
Citar            
MensajeEscrito el 18 Jul 2007 09:41 pm
var xc1:String = "<node label=Prueba/>";
trace(xc1.split("/").join(''));
//<node label=Prueba>
trace(xc1);
//<node label=Prueba/>

Te eh mirado usar el add, enke version flash andas 5?
Saludos

Por deker

55 de clabLevel



 

msie7
Citar            
MensajeEscrito el 18 Jul 2007 10:25 pm
por la 7, ya cambié a la 8
agradezco tu aportación, estaba tratando de editar un XML a traves del tree y parecia imposible...

Gracias.

Por feisimo

66 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.