zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Javascript & Ajax
Seite neu laden Formularinhalt an JavaScript übergeben

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 22.02.2007, 00:10
Benutzerbild von Schneemann
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 15.01.2006
Ort: Bochum
Beiträge: 268
Schneemann befindet sich auf einem aufstrebenden Ast
Standard Formularinhalt an JavaScript übergeben

Hallo,

ich habe ein kleines Formular, den Inhalt der Eingabefelder würde ich gerne bei Klick auf einen Button einer JavaScript-Funktion übergeben. Wie mache ich das?

Mein HTML sieht so aus:
Code:
<form action="javascript:;" method="post">
  <label for="grund">Grund</label>
  <select id="grund">
  <option value="#" selected="selected">Bitte wählen</option>
  <option value="0">User ist ein Fake</option>
  <option value="1">User belästigt andere User</option>
  <option value="2">Unechtes Profil</option>
  </select>
  <label for="bemerkung">Bemerkung</label>
  <textarea id="bemerkung"></textarea>
  <button onclick="melden()">Melden</button>
  <button onclick="doch_nicht()">Abbrechen</button>
</form>
Ich verwende deshalb JavaScript, weil dieses via AJAX eine PHP-Datei mit eben diesem Inhalt aus dem Formular anschubsen soll und die Seite so nicht neu laden muss.

Meine JavaScript-Datei sieht derzeit so aus:
Code:
function melden(grund, bemerkung, user_id)
{
  $.ajax(
  {
    type: "POST",
    url: "sendmail.php",
    data: "grund=" + grund + "&bemerkung=" + bemerkung,
    success: function(){
      alert( "Der User mit der ID \"" + user_id + "\" wurde gemeldet." );
    }
  }
  );
}

Wen der JavaScript-Code verwirrt -> Ich verwende jQuery als JavaScript-Bibliothek.

Leider weiß ich nicht, wie ich die Daten aus "Grund" und "Bemerkung" in der JavaScript-Datei bei "data" verarbeiten kann?
__________________
Gruß,
Peter
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 22.02.2007, 13:56
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 25.03.2004
Beiträge: 1.843
RoToRa wird schon bald berühmt werden
Standard

Ich würde vorschlagen, das du dir ein gutes JavaScript-Buch oder -Tutorial durchliest. Das Zugreifen auf Formularfelder gehört zu den absoluten Grundlagen.

Außerdem, bedenke das nicht jeder JavaScript hat oder will!

Code:
<form action="javascript:;" method="post">
  <label for="grund">Grund</label>
  <select id="grund" name="grund">
  <option value="#" selected="selected">Bitte wählen</option>
  <option value="0">User ist ein Fake</option>
  <option value="1">User belästigt andere User</option>
  <option value="2">Unechtes Profil</option>
  </select>
  <label for="bemerkung">Bemerkung</label>
  <textarea id="bemerkung" name="grund"></textarea>
  <button onclick="melden(this.form.elements['grund'].options[this.form.elements['grund'].selectedIndex].value,  this.form.elements['bemerkung'].value, 'Username')">Melden</button>
  <button onclick="doch_nicht()">Abbrechen</button>
</form>
EIn paar Anmerkungen:
- Die Formularelemente benötigen "Namen", wenn man mit dem Elements-Collection auf sie zugreift. Alltenativ könnte man getElementById (oder jQuerys Variante) benutzen, dann kann auf die Namen verzichtet werden.
- "this" innerhalb des Event-Handlers der Buttons referenziert den Button.


Und wenn du schon jQuery benutzt schau dir auch mal serialize an (API/1.1.1/Ajax - jQuery JavaScript Library).

Robin
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 23.02.2007, 02:05
Benutzerbild von Schneemann
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 15.01.2006
Ort: Bochum
Beiträge: 268
Schneemann befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von RoToRa Beitrag anzeigen
Und wenn du schon jQuery benutzt schau dir auch mal serialize an (API/1.1.1/Ajax - jQuery JavaScript Library).
Danke, das habe ich nun benutzt und klappt sehr gut. So macht Hilfe Spaß.
__________________
Gruß,
Peter
Mit Zitat antworten
  #4 (permalink)  
Alt 23.02.2007, 16:08
Benutzerbild von hemfrie
Administrator
XHTMLforum-Kenner
 
Registriert seit: 18.12.2003
Ort: Düsseldorf
Beiträge: 2.776
hemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannt
Standard

Mir fällt immer wieder auf, dass Du Deine Fragen in zwei und mehr Foren gleichzeitig stellst. Vielleicht ist es Dir ja nicht bekannt, aber mit Crosspostings machst Du Dich sehr schnell unbeliebt.

Ich antworte grundsätzlich nicht wenn ich sowas sehe.

TP Hilfe Forum - Formularinhalt an JavaScript übergeben
Mit Zitat antworten
  #5 (permalink)  
Alt 24.02.2007, 18:55
Benutzerbild von Schneemann
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 15.01.2006
Ort: Bochum
Beiträge: 268
Schneemann befindet sich auf einem aufstrebenden Ast
Standard

In jedem Forum halten sich andere Leute auf, die andere Ideen und Vorschläge haben. Wieso soll ich nur in einem Forum nach Lösungen zu meinem Problem fragen?
__________________
Gruß,
Peter
Mit Zitat antworten
  #6 (permalink)  
Alt 24.02.2007, 20:03
Benutzerbild von hemfrie
Administrator
XHTMLforum-Kenner
 
Registriert seit: 18.12.2003
Ort: Düsseldorf
Beiträge: 2.776
hemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannthemfrie ist jedem bekannt
Standard

Zitat:
Crossposting bedeutet, dass ein und dieselbe Frage in mehreren Foren oder Newsgroups gleichzeitig gestellt wird. Ein solches Verhalten wird von den meisten Helfern nicht toleriert, denn damit stellst Du einerseits die Kompetenz der Helfer jedes einzelnen Forums und Newsgroup in Frage und bewirkst zudem, dass ein zig-faches an Stunden aufgewendet wird, um nur ein einziges Problem zu lösen, denn überall werden sich die Helfer daran setzen, eine Lösung für Dich zu finden. Das ist ganz klar ein Missbrauch an dem kostenlosen und freiwilligen Support, der hier angeboten wird. Wenn Deine Frage klar und deutlich gestellt wurde, dann wirst Du ganz bestimmt innerhalb kürzester Zeit eine Antwort erhalten. Sollte dies auch nach mehreren Tagen nicht der Fall sein, dann versuche bitte die Frage besser zu formulieren. Falls Du dennoch in einem zweiten Forum posten solltest, erwähne bitte, dass Du die Frage schon woanders gestellt hast, und dass Du es tust, weil keine Lösung gefunden werden konnte.
Dieser Text aus dem Netikette und Crossposting - phpforum.de trifft das ganze recht gut.

Obwohl Du ja nun wohl die Lösung in diesem Forum bekommen hast, war es Dir z. B. zuviel Arbeit in dem anderen Forum mitzuteilen, dass Du Dein Problem gelöst hast und wie Du es gelöst hast.

Es gehört einfach zur "Netikette", dass man

a.) Mitteilt, wenn sich das Thema erledigt hat.
b.) Evtl. seinen Lösungsansatz mitteilt.

Auf diese Weise kannst Du verhindern, dass sich freiwillige Helfer unnötig mit Deinem schon längst gelösten Problem beschäftigen. Was b.) betrifft, passt das Motto "nehmen und geben", welches ein Forum überhaupt erst am leben hält.
Mit Zitat antworten
  #7 (permalink)  
Alt 24.02.2007, 21:27
Benutzerbild von Schneemann
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 15.01.2006
Ort: Bochum
Beiträge: 268
Schneemann befindet sich auf einem aufstrebenden Ast
Standard

Es gibt mehrere Lösungen und ich habe noch nichts gefunden was mich überzeugt hat, daher poste ich es auch nicht. Ergo habe ich noch keine Lösung.
__________________
Gruß,
Peter
Mit Zitat antworten
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Datenbankabfrage aus JavaScript starten FBI Javascript & Ajax 2 02.11.2008 12:19
javascript vars an php übergeben? markuskoehler Serveradministration und serverseitige Scripte 2 01.10.2008 22:50
Wort in Javascript Code einfügen; dann Javascript Code ausgeben Sp33dy G0nz4l3s Javascript & Ajax 1 23.05.2008 10:37
Impressumsaufruf mit Javascript Sinclair Javascript & Ajax 6 19.05.2008 16:41
Formulardaten an Javascript übergeben r74 (X)HTML 2 23.04.2007 21:28


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:18 Uhr.