Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2000
    Messaggi
    137

    cerca uno spazio e spezza la stringa

    ho creato una funzione per cambiare img e testo in due div tutto funziona se non che
    non riesco a gestire il testo >22 char e mi va fuori... per non impazzire (il testo viene caricato da un db con una variabile in asp) ho creato questa funzione e all'interno un controllo per spezzare in due la stringa, nel codice html della pagina caricata vedo che nelle stringhe con spazi c'è & nbsp; (ovviamente senza spazio) ma non lo intercetta. Ieri da casa funzionava, poi oggi dove lavoro non più... dove sbaglio..
    qualcuno mi sa dire...qualcosa
    grazie


    function cambiaimg(img,tit) { // cambia img nel layer dict_image
    var tit1, tit2, K, i;
    str="<img src=/playtime_log/foto/"+img+" border='0' width='130' height='130'>";
    document.getElementById("dict_image").innerHTML=st r;

    if(tit.length > 23)
    {
    i=22
    for(K=0; K<22; K++)
    {
    car = tit[i];
    if (car == "" || car == "&#32" || car == " ")
    {
    tit1=tit.slice(0,i);
    tit2=tit.slice(i,tit.lenght);
    tit=tit1+"\n"+tit2;
    K=22;
    }
    i--;
    }
    }
    document.getElementById("lemDX").innerHTML=tit;

    }

  2. #2
    Se hai il controllo sullo script asp che genera la stringa di testo, non sarebbe più comodo usare una funzione asp per tagliare la stringa (per esempio Left() )?

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2000
    Messaggi
    137
    sì potrei ma sarebbe veramente più complicato... il codice per chiamare quell'immagine e il suo testo è un casino (il db era formattato per usarlo con xml da flash e devo usare per forza quel db con tante rotture per pulirlo..
    perchè non intercetta il carattere?? nel codice inviato ovviamente il primo spazio è
    & nbsp; che come una scema ho scritto attaccato ed è venuto invisibile!!

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Ciao TOPUS,

    questa condizione
    codice:
    car == "&nbsp;"
    e questa
    codice:
    car == "&#32"
    non saranno mai vere... un carattere singolo non può essere uguale a più caratteri
    io sinceramente non ho ben capito cosa vuoi fare... dalla tua funzione sembrerebbe che tu voglia dividere in 2 righe le stringhe più lunghe di 23 caratteri... nella prima riga la prima parola (cioè fino al primo spazio) e nella seconda riga il resto della stringa...
    potresti fare un esempio di come vorresti che andassero le cose?

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2000
    Messaggi
    137
    bravo, esattamente come dici tu.
    esattamente quello voglio fare..
    ma non capisco perchè c'è stato un momento l'altra sera che funzionava..poi ho voluto esagerare nel mettere in ordine enon mi funzionava più ma era sera tardi e non ricordo cosa ho modificato.
    grazie comunque

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.