Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Problema nell'apertura di un popup javascript

    Ho una classica pagina html, nella quale c'è un link ad un javascript che come risultato apre una finestra di popup con dei dati da scegliere al suo interno.

    Il problema è che in locale funziona tutto alla perfezione, ma se accedo con un'altra macchina, riesco ad aprire la pagina html principale, ma quando clicco sul link del popup jasvascript, non accade letteralmente nulla.

    Ho controllato i diritti sui files interessati e sono tutti apposto: chiunque può leggere ed eseguire (ho messo anche temporaneamente la modifica, anche se non serve a nulla, ma ho lo stesso risultato).

    Ho controllato la console javascript di firefox per visualizzare l'eventuale errore o avviso, ma nulla, non ottengo nessun errore o avviso, come se non clicassi proprio su quel link.

    Ho provato con vari browsers: ie, opera, firefox, konqueror etc etc, sempre lo stesso risultato.

    Idee? Aiuto! :sigh:

  2. #2
    Utente di HTML.it L'avatar di Umanista
    Registrato dal
    Jan 2002
    Messaggi
    1,022
    Potresti cortesemente postare il codice?

  3. #3
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Riassumo la tua domanda: su un pc lo script funziona, su altri no!

    In base a quali dati forniti possiamo azzardare una diagnosi? :master:

    Posta la pagina e gli eventuali script esterni richiamati o, meglio, un link alla pagina pubblicata.

    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

  4. #4
    Si avete perfettamente ragione ragazzi, andavo di fretta e non ho pensato a postare il codice, sperando anche che fosse un problema abbastanza comune. Posterò domani, che ora non sono a casa. Grazie delle risposte.

  5. #5
    Vi posto il codice qui di seguito: come vedrete è assolutamente scarno, perché è semplicemente una prova.

    La pagina html principale di cui parlavo è questa:


    <HTML>
    <HEAD>
    <script type="text/javascript">
    <!--
    var stile="top=1, left=10, width=250, height=250, status=no, menubar=no, toolbar=no scrollbar=no";
    function popUp(apri){
    window.open(apri,"",stile);
    }
    //-->
    </script>
    </HEAD>
    <BODY>
    <table border=1 width="100%">
    <tr>
    <td id="cpu" width="60%"></td>
    <td id="cpuid" width="5%"></td>
    <td id="cpupr" width="10%"></td>
    <td id="cpupriva" width="10%"></td>
    <td width="15%">CPU</td>
    </tr>
    <tr>
    <td id="ram" width="60%"></td>
    <td id="ramid" width="10%"></td>
    <td id="rampr" width="15%"></td>
    <td id="rampriva" width="15%"></td>
    </tr>
    </table>




    </BODY>
    </HTML>


    Mentre la pagina che si dovrà aprire con il link javascript (chiaramente visibile nella pagina html principale) è:


    <HTML>
    <HEAD>
    <script type="text/javascript">
    <!--
    function ritornaValore(){
    valore=document.selezionacpu.cpu.options[document.selezionacpu.cpu.selectedIndex].value;
    // if (document.all)
    window.opener.document.all('cpu').innerHTML= valore;
    // window.opener.document.all('cpuid').innerHTML= id;
    // window.opener.document.all('cpupr').innerHTML = prezzo;
    // window.opener.document.all('cpupriva').innerHTML= prezzo*1.2;
    /* else
    if (document.getElementByID)
    window.opener.document.getElementByID('cpu').value = valore;*/
    setTimeout('self.close()',500);
    }
    //-->
    </script>
    </HEAD>
    <BODY>
    <?
    include("config.php");
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.php");
    $keys = explode(",", 'cpu');
    $query = "";
    reset ($keys);
    while (list(,$parola) = each ($keys))
    {
    $parola = trim($parola);
    if ($parola != "")
    $query .= "categoria LIKE '%$parola%' OR ";
    }
    $query .= "0";
    $query = "SELECT descrizione,prezzo FROM magazzino WHERE " . $query;
    $result = mysql_query($query, $db);
    ?>
    <form name="selezionacpu">
    <select name="cpu" multiple onChange="ritornaValore()">
    <option selected value="">Seleziona il prodotto...</option>
    <?
    while ($row = mysql_fetch_array($result))
    {
    echo "<option value=\"$row[descrizione]\">$row[descrizione]</option>";
    }
    ?>
    </select>
    </BODY>
    </HTML>


    Ora a prescindere che nella finestra di popup ci sono sicuramente errori, commenti aperti e chiusi per mascherare codice ancora da provare etc etc, non capisco per quale motivo in locale, se clicco sul link della pagina html principale, funziona tutto alla perfezione (nel senso che si apre la finestrella etc etc), mentre da un'altra macchina no. Ovviamente ho provato anche ad usare dei link assoluti, non assoluti etc etc. Qualsiasi consiglio, anche il più banale è ben accetto, vista la mia pochissima esperienza in questo campo della programmazione.

    Grazie infinite.

  6. #6
    Utente di HTML.it L'avatar di Umanista
    Registrato dal
    Jan 2002
    Messaggi
    1,022
    Questo
    <a href="java scriptopUp('cpu.php')">

    va riscritto così:
    <a href="#" onclick="popUp('cpu.php');">

  7. #7
    grazie umanista, ma purtroppo stesso risultato: in locale si, in remoto no .

    E nessun errore o avviso nella console java di firefox.

  8. #8
    Utente di HTML.it L'avatar di Umanista
    Registrato dal
    Jan 2002
    Messaggi
    1,022
    Potresti cortesemente postare l'URL del file in questione, così provo pure io con qualche browser e forse riesco a capirci qualcosa di più.

  9. #9
    E' tutto in lan, non ho uppato nulla da nessuna parte. I due files sono nella stessa dir (/var/www/progetto/preventivi/insertprev.html e /var/www/progetto/preventivi/cpu.html).

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.