Visualizzazione dei risultati da 1 a 8 su 8

Discussione: js non va

  1. #1

    js non va

    Js non va. Secondo voi perché?

    codice:
    <script language=\"JavaScript\">
    <!--
    function LoadInfo(selectVal)
    {
      var myForm = document.testform;
      myForm.company = myForm.getElementsById(selectVal+ '_company').value;
      myForm.id = myForm.getElementsById(selectVal+ '_company').value;
      myForm.addres = myForm.getElementsById(selectVal + '_company').value;
    }
    -->
    </script>
    <html>
    <head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>
    <form name="testform" onSubmit="return false;" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    <table width="497" border="1" align="center"
    cellpadding="2" cellspacing="1" bordercolor="#0000FF"
    bgcolor="#99CCFF" rules="none">
    <tr align="center" valign="middle">
    <td width="240">Descrizione</td>
    <td width="240">Codice</td>
    </tr>
    <tr align="center" valign="middle">
    <td>
    <?php
    $query_01 = "SELECT * FROM MANODOPERA;";
    $result = mysql_query($query_01,$link);
    while($row = mysql_fetch_array($result)){
    $desman = $row['DESMAN'];
    echo "<input type=\"hidden\" name=\"".$row["CODMAN"]."_company\" value=\"".$row["DESMAN"]."\">\n";
    echo "<input type=\"hidden\" name=\"".$row["CODMAN"]."_company\" value=\"".$row["UNIMISMAN"]."\">\n";
    echo "<input type=\"hidden\" name=\"".$row["CODMAN"]."_company\" value=\"".$row["COSMAN"]."\">\n";
    echo "<input type=\"hidden\" name=\"".$row["CODMAN"]."_company\" value=\"".$row["AGGMAN"]."\">\n";
    $option .="<option value=\"$desman\">$desman</option>";
    }
     echo"<select name=\"descrizione\" onChange=\"LoadInfo(this.selectedIndex.value);\" size=\"10\">";
    echo $option;
    ?>
    </select>
    </td>
    <?
    $aux=$_POST["DESMAN"];
    include("data.txt");
    $link=mysql_connect("$db_host","$db_login","$db_pass");
    @mysql_select_db( "$database")
    or die( "Impossibile trovare il DB $database");
    $sql = "SELECT * FROM MANODOPERA WHERE DESMAN=\"$aux\"";
    $result = mysql_query($sql) or die ("Couldn't Execute Query");
    while ($row = mysql_fetch_array($result)) {
    $id = $row['CODMAN'];
    $company = $row['DESMAN'];
    $user = $row['UNIMISMAN'];
    $addres = $row['COSMAN'];
    $zip = $row['AGGMAN'];
    }
    ?>
    <TD>
    <INPUT TYPE="text" SIZE=20 NAME="PHONE" VALUE="<?echo $id;?>"></td>
    </tr>
    </table>
    </form>
    </body>
    </html>

  2. #2
    Vorrei che mi aiutaste a risolvere il mio problema.
    Intanto posto un link dove potete vedere di cosa parlo.
    Non riesco a scrivere correttamente il js.
    Dovrei caricare nel campo text il valore del campo CODMAN (oppure,
    indifferentemente, il valore del campo UNIMISMAN o COSMAN o AGGMAN) che
    corrisponde al valore del campo DESMAN che selezioni nel select.
    Ringrazio in anticipo.

    codice:
    <html>
    <head>
    
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>
    <form name="testform" method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
    <table width="497" border="1" align="center"
    cellpadding="2" cellspacing="1" bordercolor="#0000FF"
    bgcolor="#99CCFF" rules="none">
    <tr align="center" valign="middle">
    <td width="240">Descrizione</td>
    <td width="240">Codice</td>
    </tr>
    <tr align="center" valign="middle">
    <td>
    <?php
    $query_01 = "SELECT * FROM MANODOPERA;";
    $result = mysql_query($query_01);
    while($row = mysql_fetch_array($result)){
    $desman = $row['DESMAN'];
    echo "<input type=\"hidden\" name=\"".$row["CODMAN"]."_descrizione\" value=\"".$row["DESMAN"]."\">\n";
    echo "<input type=\"hidden\" name=\"".$row["CODMAN"]."_unità_misura\" value=\"".$row["UNIMISMAN"]."\">\n";
    echo "<input type=\"hidden\" name=\"".$row["CODMAN"]."_costo\" value=\"".$row["COSMAN"]."\">\n";
    echo "<input type=\"hidden\" name=\"".$row["CODMAN"]."_aggiornamento\" value=\"".$row["AGGMAN"]."\">\n";
    $option .="<option value=\"$desman\">$desman</option>";
    }
    ?>
    <select name="descrizione" onChange="onChange()" size="10">
    <?
    echo $option;
    $aux=$_POST["DESMAN"];
    ?>
    <script language="JavaScript">
    <!--
    function onChange() {
      var Current =
        document.testform.descrizione.selectedIndex;
      document.testform.codman.value =
      document.testform.descrizione.options[Current].value;
    }
    //--></script>
    </select>
    </td>
    
    <?
    include("data.txt");
    $link=mysql_connect("$db_host","$db_login","$db_pass");
    @mysql_select_db( "$database")
    or die( "Impossibile trovare il DB $database");
    $sql = "SELECT * FROM MANODOPERA";
    $result = mysql_query($sql) or die ("Non posso eseguire la query");
    while ($row = mysql_fetch_array($result)) {
    $id = $row['CODMAN'];
    }
    print $aux;
    ?>
    
    <TD>
    <INPUT TYPE="text" SIZE=20 NAME="codman" VALUE="<?echo $id;?>"></td>
    </tr>
    </table>
    </form>
    </body>
    </html>

  3. #3
    <script language=\"JavaScript\">
    <!--
    function LoadInfo(selectVal)
    {
    var myForm = document.testform;
    myForm.company = myForm.getElementsById(selectVal+ '_company').value;
    myForm.id = myForm.getElementsById(selectVal+ '_company').value;
    myForm.addres = myForm.getElementsById(selectVal + '_company').value;
    }
    -->
    </script>
    credo che sia qui il problema

    1) si scrive getElementById
    2) è un metodo di document => document.getElementById("...");
    3) ti complichi troppo la vita... dovresti recuperare i campi tramite nome del form
    document.forms["NOMEDELFORM"].elements["NOMEDELCAMPO"].value

    risolvi quindi la tua funzione in questo modo

    <script language=\"JavaScript\">
    <!--
    function LoadInfo(selectVal)
    {
    var myForm = document.testform;
    myForm.company = myForm.elements[selectVal+ '_company'].value;
    myForm.id = myForm.elements[selectVal+ '_company'].value;
    myForm.addres = myForm.elements[selectVal + '_company'].value;
    }
    -->
    </script>
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  4. #4
    Ti ringrazio Mackey, ma ti dispiacerebbe vedere il secondo script? :quote:

  5. #5
    questo?
    <script language="javascript">
    <!--
    function onChange() {
    var Current = document.testform.descrizione.selectedIndex;
    document.testform.codman.value = document.testform.descrizione.options[Current].value;
    }
    //-->
    </script>

    mi sembra tutto corretto...
    in HTML scrivi tutto minuscolo...

    onchange=".." anzichè onChange=".."

    ma l'errore dove te lo da?
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

  6. #6
    Si è quello.
    Se provi a cliccare sul link, ti farai un'idea dell'errore.
    Nel select box io dovrei vedere i valori dei campi CODMAN o UNISMAN, o altri da me preventivamente scelti, una volta selezionato il valore nel select.
    Invece mi ripete lo stesso valore del select, ad eccezione di quando carico la pagina:in tal caso esce il valore 12, che è il CODMAN dell'ultimo record della tabella caricata.

  7. #7
    :master: :quote:

  8. #8
    il problema non è di JS ma di PHP...

    prova a cambiare questa riga:
    $option .="<option value=\"$desman\">$desman</option>";

    in questo modo:
    $option .="<option value=\"$row[CODMAN]\">$desman</option>";

    se non è questo... allora non ho capito una mazza...
    «Se leggi dimentichi, se vedi capisci, se fai impari» Piaget

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.