Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di KLINKO
    Registrato dal
    Sep 2002
    Messaggi
    285

    replace di un carattere se esiste

    devo sostituire un un carattere con una assegnazione di valori all'interno di un link
    gli date uno sguardo non capisco dove sbaglio.

    function verifica(url){

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

    if(url.substring(i) == "?") {

    url.substring(i) = replace("?tm=" + new Date().getTime()+"&")

    }
    else
    url = url + "?tm=" + new Date().getTime();
    }

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Non esiste una funzione replace() in javascript... esiste il metodo .replace() di un oggetto stringa...

    url = url.replace("\?","\?tm="+(new Date().getTime().toString())+"&");

    rivedi pero' tutta la logica del tuo script... se avesse funzionato avrebbe aggiunto un'infinita' di date...

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it L'avatar di KLINKO
    Registrato dal
    Sep 2002
    Messaggi
    285
    si infatti mi si blocca tutto

    devo fare due funzioni separate? o è la stessa cosa?

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

    if(url.substring(i) == "?") {

    url = url.replace("\?","\?tm="+(new Date().getTime().toString())+"&");
    }
    else
    url = url + "?tm=" + new Date().getTime();
    }

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    E' il ciclo che ti freaga... per ogni carattere che non sia un ? aggiunge la data...

    Fai cosi':

    if (url.indexOf("\?")>=0) {
    url = url.replace("\?","\?tm="+(new Date().getTime().toString())+"&");
    } else {
    url = url + "\?tm="+(new Date().getTime().toString());
    }

    Ma con un controllo sottilmente diverso viene:

    url += (url.indexOf("\?")>=0) ? "&" : "?";
    url += "tm="+(new Date().getTime().toString());

    In questo caso il parametro viene aggiunto in coda alla querystring, il che non dovrebbe influire sul risultato, ma lo script si semplifica assai.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it L'avatar di KLINKO
    Registrato dal
    Sep 2002
    Messaggi
    285
    grazie di avermelo spiegato... poi con le mie conoscenze ho fatto cosi

    url = url.replace("\?","");
    url = url.replace("\.asp","\.asp?tm="+(new Date().getTime().toString())+"&");


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 © 2025 vBulletin Solutions, Inc. All rights reserved.