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

    Problemi cn l'apertura di nuova finestra.

    Salve a tutti, mi sn registrato da poco e mi scuso per ripetizioni, errori e quant altro ci possa essere di sbagliato nella mia richiesta.

    Allora il mio problema è relativo alla parte ricerca di un sito ke ho fatto cn la mia scuola. In poche parole ho un form cm tutti cn una stringa e un bottone per la ricerca:
    Dopo aver inserito il testo da ricercare e aver cliccato invio o il bottone dovrebbe aprirmi una pagina già fatta e inserirmi gli oggetti trovati.
    Per aprire questa nuova pagina ho usato window.open(), ma vi sn dei problemi appunto in questo mtodo. Nn riesco ad aprire correttamente la pagina. O me ne apre 2, oppure una vuota, ma facendo F5 la pagina è quella corretta e nn riesco a capire il perchè.
    Questo succede utilizzando cm browser opera, mentre con IE nn succede proprio nulla. Sembra nemmeno carichi nulla.

    Vi ringrazio dell'attenzione, spero mi potiate aiutare.

    Un saluto... ciao.

    P.S: Se volete vi fornisco il codice sia delle pagine sia degli javascript.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    Re: Problemi cn l'apertura di nuova finestra.

    Benvenuto sul forum
    Originariamente inviato da Fure87
    P.S: Se volete vi fornisco il codice sia delle pagine sia degli javascript.
    Magari... anche se sospetto che tutto dipenda dal link con il quale chiami la funzione... devi adottare una sintassi simile:

    <a href="#" onclick="tuaFunzione();return false;">

    ciao

    Edit: ad una terza rilettura del quesito (non sono avezzo all'uso delle abbreviazioni sms ) intuisco che tu stia usando un form... in questo caso ci sono diverse soluzioni, fra le quali:

    <form ... target="miaPop" onsubmit="window.open('','miaPop');">

    Usare le abbreviazioni vi fara' risparmiare qualche decimo di secondo, ma a scapito della leggibilita', comprensibilita' e della pazienza degli altri
    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
    Registrato dal
    May 2006
    Messaggi
    9
    Questa è la parte Html:
    <form name="ricerca" method="get" onSubmit="search()">
    <label>Ricerca nel sito</label>
    <input type="text" name="stringa" value="" />
    <input type="submit" value="Cerca" onclick="search()"/>
    </form>

    Mentre la parte javascript è questa:
    function search(){
    if (ricerca.stringa.value <= 0){
    alert("Inserisci almeno un termine");
    reload();
    }
    else{
    var stringa = ricerca.stringa.value;
    window.open("ricerca.html");
    }

    }

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    9
    Sono riuscito a risolvere tutto.
    l'unico problema è che se non inserisco nulla nella stringa di ricerca, e confermo con invio o con il pulsante, mi rimanda alla pagina di ricerca, mentre voglio che emetta un alert e ricarichi la pagina corrente.
    Questo è il codica html:
    <form action="ricerca.html" name="ricerca" target="_blank" onSubmit="search()">
    <label>Ricerca nel sito</label>
    <input type="text" name="stringa" value="" />
    <input type="submit" value="Cerca" onclick="search()"/>
    </form>
    mentre questo è lo javascript:
    function search(){
    if (ricerca.stringa.value <= 0){
    alert("Inserisci almeno un termine");
    reload();
    }
    }

    Grazie dell'attenzione.

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    1 - non puoi usare search come nome di una funzione perche' e' una "parola riservata" in quanto identifica una porzione dell'URL della pagina;

    2 - L'evento che dovrebbe provocare l'invio del form (il click sul pulsante submit) nel tuo caso ne scatena diversi... dapprima richiama la funzione di cui sopra (onclick nel pulsante) quindi dovrebbe scatenare l'azione insita nel pulsante stesso (invio del form) ma a questo punto viene richiamata nuovamente la funzione (onsubmit nel form) ed infine il form verra' inviato... se nel frattempo non ci fossero ulteriori istruzioni nello script che, se fossero sintaticamente corrette, dovrebbero procedera all'invio del form... invece ricaricano la pagina corrente o aprono una finestra nella quale verra' ospitata la pagina chiamata, ma senza averle passato i parametri dato che il form non e' stato inviato.

    Qui mi limito a proporti una soluzione minimalista (delle tante possibili) invitandoti ad approfondire lo studio del linguaggio che, a mio avviso, e' sempre utilissimo conoscere.

    codice:
    <form name="ricerca" method="get" target="_blank" onsubmit="return controlla()">
    <label>Ricerca nel sito</label>
    <input type="text" name="stringa" value="" />
    <input type="submit" value="Cerca" />
    </form>
    
    function controlla(){
      if (document.ricerca.stringa.value==""){
        alert("Inserisci almeno un termine");
        return false;
      }
      return true;
    }
    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

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.