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

Link-Variablen-Parameterübergabe mit Button per Javascripte

Frage Entwicklung JavaScript

Mitglied: Metzger-MCP

Metzger-MCP (Level 2) - Jetzt verbinden

30.10.2012, aktualisiert 20:08 Uhr, 3961 Aufrufe, 6 Kommentare

Hallo Leute ...
ich habe keine Ahnung von Javascripte und scheitere wohl schon an den Basics...
Ich möchte aus einem Formular mit mehreren Inputfeldern mit unterschiedlichen
Button's unterschiedliche Seiten aufrufen. Dabei soll aber ein Parameter mit
übergeben werden. Leider habe ich durch selfhtml und google nichts gefunden
oder ich habe falsch gesucht . Ich bekomme einfach nicht den Parameter rüber
immer nur

" http://localhost/uebergabe.php?document.Testform.datei.value "

Mal zum Scripe das eingeschrumpft wurde.

01.
<?php 
02.
include 'HEAD.php'; 
03.
?> 
04.
 
05.
<div> 
06.
	<form enctype = "multipart/form-data" action = "WECH.php" method = "post" name="Testform"> 
07.
		<p>  
08.
			FUNKTIONSDATEI &nbsp; : <input type="file" name="datei" /> 
09.
			<input type="button" name="EinButton" value="Weiter" onclick="TEST()" /> 
10.
		</p> 
11.
		<p>	<input type = "submit" value = "Absenden" name="abgeschickt"/></p> 
12.
	</form> 
13.
</div>	 
14.
 
15.
<script type="text/javascript"> 
16.
function TEST ()  
17.
18.
	if (document.Testform.datei.value != "")  
19.
20.
		window.location.href = "uebergabe.php?document.Testform.datei.value"; 
21.
22.
	else 
23.
	{	 
24.
		alert('Fehler'); 
25.
26.
27.
</script> 
28.
 
29.
</body> 
30.
</html>
Mitglied: Arano
30.10.2012 um 17:43 Uhr
Hallo Metzger

Dein Problem steckt in folgender Zeile:
01.
window.location.href = "uebergabe.php?document.Testform.datei.value";
Hier wird das Javascript welches den Wart aus dem Feld lesen sollte als ganz normale Zeichenkette angesehen und auch als URL eingefügt.
01.
window.location.href = "uebergabe.php?" + document.Testform.datei.value;
Das Plus-Zeichen dient in diesem Fall als Verkettungszeichen.

Und noch etwas:
Du definierst einmal als Ziel des Formulars action="WECH.php" und einmal windows.location.htef="uebergabe.php"
Welches soll es denn nun sein ?
Das ist wie ein Päckchen Nudeln mit zwei Preisschildern oO Welches ist jetzt das richtige !?
Das kannst du hier bestimmen, in dem du der Javascript-Funktion-TEST noch einen Return-Wert gibst: return false;


~Arano
Bitte warten ..
Mitglied: bytecounter
30.10.2012 um 17:45 Uhr
Also unformatierten Quellcode schau ich mir nicht wirklich an; dieses Forumfeature hat nämlich seine gute Daseinsberechtigung.
Auf die Schnelle frag ich mich aber, wo denn da überhaupt ein Wert übergeben wird.
Bitte warten ..
Mitglied: Metzger-MCP
30.10.2012, aktualisiert um 20:00 Uhr
Hallo Arno,
als erstes Danke für deine produktive Antwort.
Wie ich oben geschrieben habe, habe ich das Scripte auf das
wesentliche zusammen gekürzt, so das man direkt zum Problem
kommt und nicht das ganze unwichtige mit durcharbeiten muss.

Zitat von Arano:
Du definierst einmal als Ziel des Formulars action="WECH.php" und einmal
windows.location.htef="uebergabe.php"
Welches soll es denn nun sein ?

Ich habe auf dem Formular 20 Input - Anweisungen, die beim
neuanlegen eines Datensatzes alle Felder des Formular an ein
Datenbankscripte ( WECH.PHP ) übergeben werden sollen.

Da ich über die Buttons eine ( Updatefunktionen ) realisieren
möchte, die nur Teile aktualisiert, habe ich ein eigenens PHP
Scripte geschrieben, welches die Sachen umsetzen. Daher die beiden
Ziele.
Mit freundlichen Grüßen Uwe
Bitte warten ..
Mitglied: Metzger-MCP
30.10.2012 um 19:58 Uhr
Hallo Bytecounter,

Zitat von bytecounter:
Also unformatierten Quellcode schau ich mir nicht wirklich an;

brauchst du ja nicht. Ich habe den Text soweit formatiert wie es mir möglich war. Mit den Zeilennummern ist es schöner, ich weis aber nicht wie es geht.

Auf die Schnelle frag ich mich aber, wo denn da überhaupt ein Wert übergeben wird.

1. <p> <input type = "submit" value = "Absenden" name="abgeschickt"/></p>

2. <input type="button" name="EinButton" value="Weiter" onclick="TEST()" />

über denn Button die Javascrpitefunktion TEST() aufruf in dem

3. window.location.href = "uebergabe.php?document.Testform.datei.value";

Mit freundlichen Grüßen Uwe
Bitte warten ..
Mitglied: bytecounter
31.10.2012, aktualisiert um 09:26 Uhr
brauchst du ja nicht. Ich habe den Text soweit formatiert wie es mir möglich war. Mit den Zeilennummern ist es schöner,
ich weis aber nicht wie es geht.
Dazu haben die Entwickler von administrator.de extra eine FAQ integriert:
Formatierungen in den Beiträgen
Der Vorteil mit der Formatierung liegt übrigens nicht nur an den Zeilennummern sondern eben auch durch Verwendung einer dicktengleichen Schriftart lässt sich der Code einfacher lesen.

Nun aber Thema durch, wir sind nicht nachtragend ;)
Also, wie arano schon schrieb, ist die Parameterübergabe falsch, die müsste wie folgt lauten:
01.
window.location.href = "uebergabe.php?" + document.Testform.datei.value; 
Wenn Du mit Firefox arbeitest, solltest Du Dir unbedingt firebug installieren - unter IE (ab 8) die Konsole einschalten.
Dann kannst Du mit
01.
var uri = "uebergabe.php?" + document.Testform.datei.value;  
02.
console.log(uri);
schauen, was wo steht.

Du solltest allerdings auch mit encodeURI() arbeiten, damit Sonderzeichen (z. B. auch Leerzeichen) in der URI korrekt kodiert werden:
01.
var uri = "uebergabe.php?" + document.Testform.datei.value;  
02.
uri = encodeURI(uri); 
03.
window.location.href = uri;
vg
Bitte warten ..
Mitglied: Metzger-MCP
31.10.2012 um 09:34 Uhr
THX auch dir bytecounter
LG Uwe
Bitte warten ..
Neuester Wissensbeitrag
Microsoft

Lizenzwiederverkauf und seine Tücken

(5)

Erfahrungsbericht von DerWoWusste zum Thema Microsoft ...

Ähnliche Inhalte
Switche und Hubs
gelöst 2 VLANs, tragged und mit link aggregation oder Verbinden oder einzeln (1)

Frage von ADORSE zum Thema Switche und Hubs ...

LAN, WAN, Wireless
gelöst TP-Link WA501G als Client einrichten - Keine IP Adresse wir bezogen (14)

Frage von bestelitt zum Thema LAN, WAN, Wireless ...

Microsoft Office
Button für Wechseln zwischen den Tabellenblättern (6)

Frage von lupi1989 zum Thema Microsoft Office ...

iOS
Video-Link lässt iPhones und iPads einfrieren

Link von runasservice zum Thema iOS ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (17)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Windows Netzwerk
Windows 10 RDP geht nicht (16)

Frage von Fiasko zum Thema Windows Netzwerk ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...