Ergebnis 1 bis 6 von 6
  1. #1
    pepe ist offline Grünschnabel
    registriert
    05-08-2008
    Beiträge
    3

    Option Feld aus Formular in anderes Feld übertragen

    Hallo liebes forum,

    habe mit Java bisher kaum was gemacht, also ein blutiger Anfänger.
    Nun habe ich aber eine Aufgabe, zu der ich nirgens eine Lösung finde, leider auch nichts hier im Archiv gefunden:
    in einem bereits vorhandenen Formular soll ein Select-Feld mit mehreren Optionen (Länder: Deutschland, Frankreich, Holland, usw etwa 30 Länder)ausgewertet werden. Das java script soll z.B. beim (option) Land Deutschland den Wert 3 in ein ANDERES "hidden"-Feld übertragen (Feld-name: "Porto"), bei anderen Selektionen aus Europa 5 (Euro) und aus der übrigen Welt 10 (Euro). Dies soll immer passieren, wenn jemand in das Option-menu-Feld "r-Land" geklickt, also ein Land ausgewählt hat (da auch Pflichtfeld!) hat und es wieder verläßt. Ziel ist, dass in dem noch "nicht belegten" "hidden"-Feld "Porto" das "richtige" Porto später mit sendmail (cgiscript funktioniert schon bestens) versendet wird.
    Ich denke, dass dies mit einer if else if Anweisung funktionieren könnte, die ich mir grob so vorstelle:

    if
    document.ariform.r-Land.option =="Deutschland"
    onChange
    document.ariform.porto==3
    else if
    document.ariform.r-Land.option =="Schweiz"
    document.ariform.porto==5
    else if ...

    usw.

    else
    document.ariform.r-Land.option ==""
    document.ariform.porto==0

    Sicher gibt´s paar Syntax-Fehler, aber ich hoffe es wird verständlich, was ich meine?! Ist das die richtige Lösung, oder geht so was überhaupt nicht?

    Antwort die zur Lösung beiträgt wäre super nett.

    Gruß
    pepe

  2. #2
    Avatar von bug13
    bug13 ist offline Mitglied
    registriert
    04-08-2008
    Beiträge
    28

    AW: Option Feld aus Formular in anderes Feld übertragen

    Hallo pepe,

    vielleicht hilft dir folgender code weiter:

    Code:
    <select id="land" name="land" size="1" onchange="setPorto();">';																							    						
    	<option value="Deutschland">Deutschland</option>
    	<option value="Frankreich">Frankreich</option>
    	<option value="Holland">Holland</option>
    	...
    </select>
    
    <input type="hidden" name="porto" id="porto" value="" />
    
    <script type="text/javascript">
    <!--			
    	document.getElementById("land").onkeyup = KeyCheck;       
    
    	function KeyCheck(e)
    	{
    		var KeyID = (window.event) ? event.keyCode : e.keyCode;
    	
    		switch(KeyID)
    		{			
    			case 38: //Arrow Up				
    				setPorto();
    				break;			
    			case 40: //Arrow Down				
    				setPorto();
    				break;
    		}
    	}									
      		  
      function setPorto()
      {		    		    		    		    	
      	var land = document.getElementById("land").value;
      	
      	if(land == "Deutschland") {
      		document.getElementById("porto").value = "3";
      	}
      	else if(land == "Frankreich") {
      		document.getElementById("porto").value = "5";
      	}
      	else if(land == "Holland") {
      		document.getElementById("porto").value = "10";
      	}
      	else if(land == "...") {
      		document.getElementById("porto").value = "...";
      	}
      	...
      }    
     -->
    </script>
    lg
    bug13
    www.kununu.com - Die Jobs, die wir lieben!

  3. #3
    pepe ist offline Grünschnabel
    registriert
    05-08-2008
    Beiträge
    3

    Question AW: Option Feld aus Formular in anderes Feld übertragen

    Hallo bug13,

    sieht klasse aus der code und das script: habe Alles in mein Formular eingebaut und leicht variiert (da die Felder teilweise anders heißen, z.B. r-Land und nicht land auch nicht porto, sondern Porto (denke mal das hier alles case-sensitive ist)?! Oder?
    Leider funktioniert das Script nicht: in das Feld "Porto" wird beim Ändern des Feldes "r_Land" leider kein Porto eingetragen (wenn ich das Land ändere) und auch nicht wenn das Formular abgeschickt wird. Habe ich irgendwas falsch gemacht bei der Umsetzung? Das script an falscher Stelle eingebaut (es steht jetzt im formular (body). Mein Formular ist einsehbar unter: Bestellung
    mein geänderter code:
    <select id="r_Land" name="r_Land" size="1" onchange="setPorto();">'; <option value=""></option>
    <option value="Deutschland">Deutschland</option>
    <option value="Frankreich">Frankreich</option>
    <option value="Holland">Holland</option>
    <option value="Schweiz">Schweiz</option>
    <option value="Oesterreich">Oesterreich</option>
    <option value="USA">USA</option>
    <option value="Italien">Italien</option>
    </select>

    <input type="hidden" name="Porto" id="Porto" value="">

    <script type="text/javascript">
    <!--
    document.getElementById("r_Land").onkeyup = KeyCheck;

    function KeyCheck(e)
    {
    var KeyID = (window.event) ? event.keyCode : e.keyCode;

    switch(KeyID)
    {
    case 38: //Arrow Up
    setPorto();
    break;
    case 40: //Arrow Down
    setPorto();
    break;
    }
    }

    function setPorto()
    {
    var r_Land = document.getElementById("r_Land").value;

    if(r_Land == "Deutschland") {
    document.getElementById("Porto").value = "3";
    }
    else if(r_Land == "Frankreich") {
    document.getElementById("Porto").value = "5";
    }
    else if(r_Land == "Holland") {
    document.getElementById("Porto").value = "5";
    }
    else if(r_Land == "Schweiz") {
    document.getElementById("Porto").value = "5";
    }
    else if(r_Land == "Oesterreich") {
    document.getElementById("Porto").value = "5";
    }
    else if(r_Land == "USA") {
    document.getElementById("Porto").value = "10";
    }
    else (r_Land == "Italien") {
    document.getElementById("Porto").value = "6";
    }
    -->
    </script>

    Vielleicht geht´s ja doch noch irgendwie?

    Jedenfalls danke für die Hilfe bug13 und vielleicht hab ich ja irgendwaswas anderes falsch gemacht?

    Gruss
    pepe

  4. #4
    Avatar von bug13
    bug13 ist offline Mitglied
    registriert
    04-08-2008
    Beiträge
    28

    AW: Option Feld aus Formular in anderes Feld übertragen

    Hallo pepe,

    also du hast vergessen die function mit } zu beenden und du darfst bei einem else keine Bedingung anführen - siehe: ... else (r_Land == "Italien") { ... .

    also wenn du das Ganze so machst, dann gehts:

    Code:
    <?php
    	if(isset($_POST['submit']))
    	{
    		echo '<pre>';
    		print_r($_POST);
    		echo '</pre>';
    	}
    ?>
    
    <form action="" method="POST">
    	
    <select id="r_Land" name="r_Land" size="1" onchange="setPorto();">'; <option value=""></option>
    <option value="Deutschland">Deutschland</option>
    <option value="Frankreich">Frankreich</option>
    <option value="Holland">Holland</option>
    <option value="Schweiz">Schweiz</option>
    <option value="Oesterreich">Oesterreich</option>
    <option value="USA">USA</option>
    <option value="Italien">Italien</option>
    </select>
    
    <input type="hidden" name="Porto" id="Porto" value="">
    
    <input type="submit" name="submit" value="abschicken" />
    </form>
    
    <script type="text/javascript">
    <!--
    document.getElementById("r_Land").onkeyup = KeyCheck;
    
    function KeyCheck(e)
    {
    var KeyID = (window.event) ? event.keyCode : e.keyCode;
    
    switch(KeyID)
    {
    case 38: //Arrow Up
    setPorto();
    break;
    case 40: //Arrow Down
    setPorto();
    break;
    }
    }
    
    function setPorto()
    {
    var r_Land = document.getElementById("r_Land").value;
    
    if(r_Land == "Deutschland") {
    document.getElementById("Porto").value = "3";
    }
    else if(r_Land == "Frankreich") {
    document.getElementById("Porto").value = "5";
    }
    else if(r_Land == "Holland") {
    document.getElementById("Porto").value = "5";
    }
    else if(r_Land == "Schweiz") {
    document.getElementById("Porto").value = "5";
    }
    else if(r_Land == "Oesterreich") {
    document.getElementById("Porto").value = "5";
    }
    else if(r_Land == "USA") {
    document.getElementById("Porto").value = "10";
    }
    else if (r_Land == "Italien") {
    document.getElementById("Porto").value = "6";
    }
    }
    -->
    </script>
    LG
    bug13
    www.kununu.com - Die Jobs, die wir lieben!

  5. #5
    pepe ist offline Grünschnabel
    registriert
    05-08-2008
    Beiträge
    3

    Thumbs up AW: Option Feld aus Formular in anderes Feld übertragen

    vielen, vielen Dank bug13 für die wirklich tolle Hilfe. Ich hätte es wahrscheinlich nie geschaft! Und es lag tatsächlich an den "kleinen" Fehlern : schließende Klammer und "falscher" Schuss bei if else. Den "neuen" geposteten Code habe ich nicht verwendet (hatte ein bisschen Angst, dass hier was wegen meiner zwischengeschalteten cgi nicht klappt), aber es klappte ja auch schliesslich so.
    Frage mich nur ernsthaft, wie ich sowas je alleine zustande bekommen soll?! Kannste mir was empfehlen (Buch, Lehrgang o.ä.) ? Einiges habe ich ja "verstanden" aber wirklich nur einen kleinen Teil.

    Ganz herzliche Grüße
    pepe

  6. #6
    Avatar von bug13
    bug13 ist offline Mitglied
    registriert
    04-08-2008
    Beiträge
    28

    AW: Option Feld aus Formular in anderes Feld übertragen

    Bitte gerne, habe gern geholfen.

    Ein spezielles Buch oder ähnliches kann ich dir leider nicht empfehlen.
    Ich finde sowieso das man das meiste lernt, indem man es einfach mal probiert.
    Und für den Fall das man mal nicht weiter weiß, gibts ja Foren wie dieses hier.
    Oft hilfts auch wenn man einfach mal drauf los googelt.

    Also weiterhin viel Spaß und Erfolg beim Coden.

    LG
    bug13
    www.kununu.com - Die Jobs, die wir lieben!

Ähnliche Themen

  1. Formular feld füllen per Knopfdruck
    Von Greeven im Forum JavaScript
    Antworten: 14
    Letzter Beitrag: 11-10-2009, 11:42
  2. Navigation per Comboboxen
    Von r4v3n im Forum JavaScript
    Antworten: 5
    Letzter Beitrag: 20-07-2005, 10:44
  3. Formular Feld überprüfung auf Zeit und Datum
    Von tseng im Forum JavaScript
    Antworten: 3
    Letzter Beitrag: 22-06-2005, 09:36
  4. Antworten: 4
    Letzter Beitrag: 17-07-2003, 17:24
  5. Formular Feld, Inhalt verschwinden, kommen
    Von Benny-2003 im Forum JavaScript
    Antworten: 8
    Letzter Beitrag: 14-07-2003, 11:15

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •