Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2013
    Messaggi
    71

    Errore Redirect javascript

    Buon giorno ho implementato questa semplice funzione per poter prendere i valori inseriti nei vari input e inviarli mediante metodo GET ad un'altra pagina, funziona tutto perfettamente, il problema lo riscontro nel momento in cui tento di inviare i valori, perché la "location" mi va in errore, e pure il path mi sembra corretto, lo fa anche con link a pagina web importanti.
    codice:
        function sendData() {
            var table = document.getElementById("formTable");
            var input = table.getElementsByTagName('input');
            var str = input[0].value;
            var array = "?0='" + str.trim() +"'";
            for(var i=1; i<=input.length; i++){
                str = input[i].value;
                if(str != "")
                    array = "&"+ i + str.trim(); 
            }
    
            window.location = "http://www.google.com"+array;
        }

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Cose trim()? array vorrebbe essere un array js?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Dovrebbe essere:
    codice:
    location.href = "http://www.google.com"+array;
    Il window iniziale non è strettamente necessario.
    Non sarebbe più comodo usare un <form method="get">?

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2013
    Messaggi
    71
    Niente, non sono riuscito a farlo funzionare, ho apportate qualche modifica e utilizzato il metodo da te indicato...
    codice:
      
      function sendData() {
            var table = document.getElementById("formTable");
            var input = table.getElementsByTagName('input');
            var str = input[0].value;
            var array = "?0=" + str.trim();
            for(var i=1; i<=input.length; i++){
                str = input[i].value;
                if(str != "")
                    array = array + "&"+ i + "=" + str.trim(); 
            }
    location.href = "http://127.0.0.1/framework/php/addRowQuery.php"+array;
    }

  5. #5
    codice:
    function sendData(){
       var arrInput=document.getElementById('formTable').getElementsByTagName('input');
       var url='http://127.0.0.1/framework/php/addRowQuery.php?';
       for(var i=0; i<arrInput.length; i++){
          url+=i+'='+arrInput[i].value+'&';
       }
       location.href=url;
    }
    

    Prova così

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2013
    Messaggi
    71
    Con questo codice che hai scritto funziona, avendo notato che anche se i parametri sono vuoti o incompleti funziona ugualmente, utilizzerò direttamente il metodo che hai scritto, GRAZIE MILLE

  7. #7
    L'errore nel tuo script sta nel ciclo for:
    i
    <=input.length; va di un elemento oltre l'array, di conseguenza
    str = input[i].value; genera un errore che blocca lo svolgimento dello script

    dovrebbe essere:
    i<input.length;

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.