Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Wert aus vorherigem formularfeld übernehmen

Frage Entwicklung PHP

Mitglied: Rocky112

Rocky112 (Level 1) - Jetzt verbinden

05.02.2011 um 00:37 Uhr, 6306 Aufrufe, 8 Kommentare

Hallo Leute, ich habe ein Formularfeld, in dem ich in ein Formularfeld ein Datum eintrage.
Genau dieses Datum möchte ich sofort weiter unten in einem anderen Formularfeld auch eingetragen haben, wie kann ich das machen, ohne vorher etwas verschicken zu mussen?

Ich kann es nicht einfach beides in ein MySQL Feld speichern, da ich den Wert evtl. noch editieren möchte.

Kann mir jemand helfen?

Vielen Dank.

Grüße Rocky
Mitglied: maretz
05.02.2011 um 08:55 Uhr
Naja - per Java-Script wäre das möglich....
Bitte warten ..
Mitglied: Rocky112
05.02.2011 um 11:14 Uhr
Zitat von maretz:
Naja - per Java-Script wäre das möglich....

Hallo, hättest Du evtl ein Beispiel?

Vielen Dank!

Grüße
Bitte warten ..
Mitglied: Guenni
05.02.2011 um 18:37 Uhr
Hi Rocky112,

du schreibst einfach eine Funktion, die den Wert von Quelle (src) dem Ziel (dest) zuweist.

Mit document.getElementById(string 'ID_des_Elements') findest du das entsprechende

Element, die Eigenschaft, die du lesen oder ändern möchtest, hängst du mit einem Punkt an.

Das Event onblur reagiert, wenn das entspr. Element seinen Fokus verliert und ruft dann

die Funktion auf. Das übergebene Argument this, siehe Formular, ist ein Zeiger auf das

Element selber.

01.
 
02.
<html> 
03.
 
04.
<head> 
05.
 
06.
<title>Untitled</title> 
07.
 
08.
<script type="text/javascript"> 
09.
 
10.
<!-- 
11.
 
12.
function copy_value(src,dest){ 
13.
 
14.
 document.getElementById(dest).value=src.value; 
15.
 
16.
17.
 
18.
// --> 
19.
 
20.
</script> 
21.
 
22.
</head> 
23.
 
24.
<body> 
25.
 
26.
<form action="" method="post"> 
27.
 
28.
<input type="text" name="date1" id="input1" onblur="copy_value(this,'input2')"> 
29.
 
30.
<input type="text" name="date2" id="input2"> 
31.
 
32.
</from> 
33.
 
34.
</body> 
35.
 
36.
</html> 
37.
 
Gruß
Günni

PS.: Entspr. Lesematerial ist sehr wichtig, da bei Java die korrekte Schreibweise eingehalten muß.

Auch die Bezeichnung von Eigenschaften ist in CSS und Java verschieden.
Bitte warten ..
Mitglied: Rocky112
05.02.2011 um 23:13 Uhr
hey günni,

perfekt, das war genau das, was ich gesucht habe!!!

jetzt aber noch eine frage. ich habe oben drei formularfelder. datum_tag, datum_monat und datum_jahr.

unten habe ich jetzt aber nur eines. geht es irgendwie, dass ich es in das eine formularfeld (datum1) so reinkopieren, dass sich aus den drei formularfeldern jeweil mit "punkten" dazuwischen in datum1 das datum bildet?

ist knifflig ich weis, ich würde aber nur ungern das formularfeld datum1 in drei felder aufteilen.

vielen dank ;)
Bitte warten ..
Mitglied: Guenni
06.02.2011 um 00:51 Uhr
Hi Rocky112,

ist vom Prinzip her das Gleiche, nur muß die Funktion dann immer aufgerufen werden, wenn

eins der 3 Textfelder geändert wurde.

Du holst dir in der Funktion einfach wieder mit document.getElementById die Werte

der Textfelder tag, monat, jahr. Dann setzt du die Werte einfach mit + und dem Punkt

in Anführungszeichen dazwischen zusammen und weist dem Textfeld datum dann den String zu.

01.
 
02.
<html> 
03.
<head> 
04.
<title>Untitled</title> 
05.
<script type="text/javascript"> 
06.
<!-- 
07.
function copy_value(dest){ 
08.
 var tag=document.getElementById('tag').value; 
09.
 var monat=document.getElementById('monat').value; 
10.
 var jahr=document.getElementById('jahr').value; 
11.
 var datum=tag + "." + monat + "." + jahr; 
12.
 document.getElementById(dest).value=datum; 
13.
14.
// --> 
15.
</script> 
16.
</head> 
17.
<body> 
18.
<form action="" method="post"> 
19.
Tag <input type="text" name="tag" id="tag" onblur="copy_value('datum')"> 
20.
Monat <input type="text" name="monat" id="monat" onblur="copy_value('datum')"> 
21.
Jahr <input type="text" name="jahr" id="jahr" onblur="copy_value('datum')"> 
22.
Datum <input type="text" name="datum" id="datum"> 
23.
</from> 
24.
</body> 
25.
</html> 
26.
 
Gruß
Günni

PS.: Wenn wir schon dabei sind . . .

Wenn das einzugebene Datum immer (oder fast immer) das aktuelle Tagesdatum sein wird,

so kannst du die Felder auch beim Laden der Seite automatisch füllen. Dazu brauchst du dann

eine weitere Funktion, die das beim Laden der Seite erledigt. Und ändern kann man ja das Datum

immer noch.

01.
 
02.
<html> 
03.
<head> 
04.
<title>Untitled</title> 
05.
<script type="text/javascript"> 
06.
<!-- 
07.
function init_datum(){ 
08.
 var heute=new Date(); 
09.
 var tag=heute.getDate(); 
10.
 var monat=heute.getMonth()+1; 
11.
 if(tag < 10){tag="0"+tag;} 
12.
 if(monat < 10){monat="0"+monat;} 
13.
 document.getElementById('tag').value=tag; 
14.
 document.getElementById('monat').value=monat; 
15.
 document.getElementById('jahr').value=heute.getFullYear(); 
16.
 copy_value('datum'); 
17.
18.
 
19.
function copy_value(dest){ 
20.
 var tag=document.getElementById('tag').value; 
21.
 var monat=document.getElementById('monat').value; 
22.
 if(tag.length < 2 ){tag="0"+tag;}  
23.
 if(monat.length < 2 ){monat="0"+monat;}  
24.
 var jahr=document.getElementById('jahr').value; 
25.
 var datum=tag + "." + monat + "." + jahr; 
26.
 document.getElementById(dest).value=datum; 
27.
28.
// --> 
29.
</script> 
30.
</head> 
31.
<body onload="init_datum()"> 
32.
<form action="" method="post"> 
33.
Tag <input type="text" name="tag" id="tag" onblur="copy_value('datum')"> 
34.
Monat <input type="text" name="monat" id="monat" onblur="copy_value('datum')"> 
35.
Jahr <input type="text" name="jahr" id="jahr" onblur="copy_value('datum')"> 
36.
Datum <input type="text" name="datum" id="datum"> 
37.
</from> 
38.
</body> 
39.
</html> 
40.
 
Bitte warten ..
Mitglied: Rocky112
06.02.2011 um 16:55 Uhr
hey günni,

du bist der beste! vielen vielen dank!

eine alleletzte frage noch.

ich habe noch ein formularfeld "datum2", welches den gleichen wert bekommen soll. wie kriege ich das hin? sprich wenn ich in tag monat jahr etwas eintrage sollten diese werte automatisch in datum1 und datum2 kopiert werden.

außerdem habe ich gelesen, dass ich mit dieser onblur funktion auch formularfelder grün umrahmen kann, sobald etwas eingetragen ist. hast du da noch einen tipp für mich?

vielen vielen dank schonmal. bis mein held des tages ;)

grüßle rocky
Bitte warten ..
Mitglied: Guenni
09.02.2011 um 17:21 Uhr
Hi rocky,

. . . ich habe noch ein formularfeld "datum2", welches den gleichen wert bekommen soll. wie kriege ich das hin? . . .

Also jetzt müsstest du es aber langsam blicken. Du brauchst doch nur innerhalb der Funktion mittels

document.getElementById('ID_des_Textfelds').value=Wert den Wert in ein zweites Textfeld zu kopieren.

. . . außerdem habe ich gelesen, dass ich mit dieser onblur funktion auch formularfelder grün umrahmen kann, sobald etwas eingetragen ist. . . .

OnBlur ist keine Funktion, sondern ein sog. Eventhandler, dem man eine Funktion "quasi" zuweisen kann. OnBlur ist ein Eventhandler der reagiert,

sobald ein Element den Fokus verliert. Bei Veränderung müsstest du den Eventhandler OnChange mit einer Funktion belegen.

Ich hatte dir ja schon geschrieben, zu JavaScript ist Lektüre Pflicht, ohne du kommst ohne nicht weit. Zu Eventhandlern siehe

z.B.: ==> http://de.selfhtml.org/javascript/sprache/eventhandler.htm

Und wenn du Element-Eigenschaften (Rahmenfarbe) mittels JavaScript lesen bzw. ändern möchtest, so musst du die JavaScript-Eigene Syntax für

diese Eigenschaften verwenden. Siehe z.B.: http://de.selfhtml.org/javascript/objekte/style.htm

Ein Beispiel noch . . .

Ein Formular-Textfeld, wenn das Feld den Fokus erhält (anklicken) ändern sich Rahmen- und Hintergrundfarbe.

01.
 
02.
<html> 
03.
<head> 
04.
<title>Untitled</title> 
05.
<script type="text/javascript"> 
06.
<!-- 
07.
function changeBorderColor(obj){ 
08.
 obj.style.borderColor="#ff0000"; 
09.
 obj.style.backgroundColor="#00aa00"; 
10.
11.
// --> 
12.
</script> 
13.
</head> 
14.
<body> 
15.
<form action="" method=""> 
16.
<input type="text" name="textfeld" onfocus="changeBorderColor(this)" /> 
17.
</form> 
18.
</body> 
19.
</html> 
20.
 
. . . und dann erwarte ich ein bißchen Eigeninitiative. Ich kann dir nicht für jede Anforderung den Code "vorkauen". Ein bißchen was musst du auch selber beitragen.

Gruß
Günni
Bitte warten ..
Mitglied: Rocky112
09.02.2011 um 17:57 Uhr
Hey Günni,

vielen Dank, jetzt habe ich es perfekt!

Ich danke Dir wirklich vielmals, hast mir übelst geholfen!!!

Wünsche Dir noch einen schönen Tag.

Grüßle Rocky

PS: Bevor ich die Frage gestellt hatte, hatte ich ja schon einiges ausprobiert, aber dachte nicht, dass es so einfach geht, dass ich einfach noch mal das selbe darunter schreibe ;)
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Administrator.de Feedback
gelöst Bug beim Übernehmen der Überschriften-Texte von Links? (2)

Frage von Lochkartenstanzer zum Thema Administrator.de Feedback ...

Microsoft Office
gelöst Schnellbausteine aus Word 2007 nach Word 2016 übernehmen (2)

Frage von TiTux zum Thema Microsoft Office ...

Windows Server
gelöst Handvoll Computer GPO nicht übernehmen (3)

Frage von 1410640014 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Windows 7
Verteillösung für IT-Raum benötigt (12)

Frage von TheM-Man zum Thema Windows 7 ...