tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
9
ZUGRIFFE
1316
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von tequito
    tequito tequito ist offline Mitglied Silber
    Registriert seit
    Oct 2006
    Beiträge
    88
    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:
    PHP-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:
    PHP-Code:
    function melden(grundbemerkunguser_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?
     

  2. #2
    xX Hardy Xx xX Hardy Xx ist offline Mitglied Silber
    Registriert seit
    Jul 2006
    Beiträge
    63
    So müsste es gehen, wenn du das in dein Script einbaust.

    Code javascript:
    1
    2
    3
    
     
    grund = document.forms[0].grund.value;
    bemerkung = document.forms[0].bemerkung.value;

    Für forms[0] kann natürlich auch der Formularname angegeben werden, und du musst auch die Variablen nicht an die Funktion übergeben. Außerdem musst du den Formularfeldern die Namen 'grund' und 'bemerkung' geben.
    Geändert von xX Hardy Xx (22.02.07 um 01:44 Uhr)
     
    Wer Rechtschreibefehler findet, der darf sie behalten ;o)

    Wenn etwas schief gehen kann, dann geht es schief.
    Denn nichts ist so einfach wie es aussieht, alles braucht länger als man denkt.
    Nichts ist unmöglich, alles wahrscheinlich, das dümmste ist sicher.

    LG xX Hardy Xx

  3. #3
    Avatar von Adi | tmine
    Adi | tmine Adi | tmine ist offline Mitglied Brokat
    Registriert seit
    Sep 2006
    Ort
    Rickenbach / Schweiz
    Beiträge
    348
    Hi Ich habe ein ändliches Problem mit einer JQery Textarea ... =(
    Das Problem ist, dass die Eingabe nicht abgefragt werden kann. D.h. wenn ich etwas in die Textarea schreibe und dann auf einen Form Button drücke und aufgrund dessen eine Javascript Funktion ausführe. Dann ist die Value der Textarea immer leer d.h. = "" ... erst nach einen refresh oder wenn das Form abgesendet wird, ist die Value dann vorhanden. =(

    Kann mir da einer helfen?

    Ich denke mal, dass das Problem bei JQuery liegen könnte. Ev. bereitet dieses die Eingaben erst bei absendung des Forms auf und übergibt sie in die Value. Ich hingegen will die Eingabe per Javaskript auf der selben Seite weiterverarbeiten.

    Ich wäre über Hilfe sehr dankbar
     
    Gruss Adi
    (freue mich immer über Bewertungen)

    "Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neuinstallieren muss"
    "Die Computer der Zukunft werden weniger als 1,5 tonnen wiegen! (Popular Mechanics, 1949)"

    bertschi.no-ip.org

    Meine Tutorials:
    HTML für Einsteiger

  4. #4
    Quaese Quaese ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Feb 2004
    Beiträge
    3.451
    Hi,

    gibts das irgendwo online?

    Ansonsten wäre es gut, wenn du das verwendete JavaScript und den zugehörigen HTML-Code zeigen würdest.

    Ciao
    Quaese
     
    Vielleicht muss man manchmal vom Weg abkommen, um nicht auf der Strecke zu bleiben!
    ----
    Der "Fortsetzungsroman" auf www.leuteforum.de

    New kind to realize large scalable projects with jQuery: jQuery SDK

  5. #5
    Avatar von Adi | tmine
    Adi | tmine Adi | tmine ist offline Mitglied Brokat
    Registriert seit
    Sep 2006
    Ort
    Rickenbach / Schweiz
    Beiträge
    348
    Hi

    Leider ist das Ganze nirgends online. Ich versuche mal alle meiner Meinung nach wichtigen Code Schnippsel zu posten. Ich hoffe die reichen


    Die Textarea
    Code :
    1
    
    <textarea id="htmltextarea" name="htmltext" style="width:550px; height:200px"></textarea>

    Per Submit wird gecheckt ob eine Eingabe getätigt wurde.. wenn nicht wird ein Alert ausgegeben:
    Code :
    1
    
    <input type="submit" name="uploadhtml" value="Speichern" />

    Diese Funktion checkt das Formular (wird ausgeführt)
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    
    chkhtmlform = function()
    {
     
        if(document.htmlform.htmlname.value == "")  
        {
            alert("Bitte Titel eingeben!");
            document.htmlform.htmlname.focus();
            return false;
        }
        
        if(document.htmlform.htmltext.value == "")
        {
            alert("Bitte einen Text eingeben!");
            document.htmlform.htmltext.focus();
            return false;
        }
        
     
    };

    Das Problem ist nun wenn das erste mal auf Spreichern gecklickt wird, sprich das Formular das erste mal abgeschickt wird, kommt die alert Box "Bitte Text eingeben" beim zweiten mal gehts dann richtig ... eine Idee warum?
     
    Gruss Adi
    (freue mich immer über Bewertungen)

    "Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neuinstallieren muss"
    "Die Computer der Zukunft werden weniger als 1,5 tonnen wiegen! (Popular Mechanics, 1949)"

    bertschi.no-ip.org

    Meine Tutorials:
    HTML für Einsteiger

  6. #6
    Avatar von Adi | tmine
    Adi | tmine Adi | tmine ist offline Mitglied Brokat
    Registriert seit
    Sep 2006
    Ort
    Rickenbach / Schweiz
    Beiträge
    348
    oke habs gefunden.... es lag daran, dass ich eine Textarea mit tinyMCE erstellt habe. dort ist das Problem bekannt ...

    Vielen Dank für deine Bemühungen
     
    Gruss Adi
    (freue mich immer über Bewertungen)

    "Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neuinstallieren muss"
    "Die Computer der Zukunft werden weniger als 1,5 tonnen wiegen! (Popular Mechanics, 1949)"

    bertschi.no-ip.org

    Meine Tutorials:
    HTML für Einsteiger

  7. #7
    Quaese Quaese ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Feb 2004
    Beiträge
    3.451
    Hi,

    vielleicht könntest du den Lösungsweg kurz skizzieren. So haben andere User mit dem gleichen Problem eine Hilfestellung.

    Besten Dank im voraus!

    Ciao
    Quaese
     
    Vielleicht muss man manchmal vom Weg abkommen, um nicht auf der Strecke zu bleiben!
    ----
    Der "Fortsetzungsroman" auf www.leuteforum.de

    New kind to realize large scalable projects with jQuery: jQuery SDK

  8. #8
    Avatar von Adi | tmine
    Adi | tmine Adi | tmine ist offline Mitglied Brokat
    Registriert seit
    Sep 2006
    Ort
    Rickenbach / Schweiz
    Beiträge
    348
    Ich grabe hier mal einen alten Beitrag wieder aus

    Also zu meiner Lösung :
    Es gibt keine !
    Diese TinyMCE textarea wird irgendwie per iframe eingefügt und javascript ist es verboten Daten aus fremden Frames zu lesen. Also ich habs nie geschafft irgendwelche Daten aus dieser TinyMCE Textarea zu lesen.
    =(

    Also für alle, die das selbe Problem haben. Es ist nicht möglich. Aber ev. kann man das ganze mit anderen Tricks umgehen. Habe mich nie weiter damit beschäftigt.
     
    Gruss Adi
    (freue mich immer über Bewertungen)

    "Linux wird nie das meistinstallierte Betriebssystem sein, wenn man bedenkt, wie oft man Windows neuinstallieren muss"
    "Die Computer der Zukunft werden weniger als 1,5 tonnen wiegen! (Popular Mechanics, 1949)"

    bertschi.no-ip.org

    Meine Tutorials:
    HTML für Einsteiger

  9. #9
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Zitat Zitat von Adi | tmine Beitrag anzeigen
    Also zu meiner Lösung :
    Es gibt keine !
    6, Setzen !
    Code :
    1
    
    tinyMCE.activeEditor.contentDocument.body.innerHTML
     

  10. #10
    Alex S Alex S ist offline Mitglied Bronze
    Registriert seit
    Aug 2011
    Beiträge
    38
    Hallo!

    Ich habe gerade das selbe Problem.
    Ich habe mir auch schon die Antworten durchgelesen, aber habe nichts verstanden.
    Könntet ihr mir noch mal den Quellcode schicken.

    Ich danke euch schon mal.

    Alex S.
     
    Ich kann dir in folgenden Themen helfen: PHP, MySQL, HTML und CSS

    Für Rechtschreibfehler übernehme ich keine Verantwortung

    www.connectface.de

Ähnliche Themen

  1. Zugriff auf JavaScript generierten Formularinhalt per $_POST
    Von Kayako666 im Forum Javascript & Ajax
    Antworten: 10
    Letzter Beitrag: 01.06.10, 12:58
  2. Formularinhalt formatieren
    Von flying-anzi im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 26.06.08, 16:38
  3. Formularinhalt überprüfen
    Von Rockhunt im Forum PHP
    Antworten: 1
    Letzter Beitrag: 28.11.07, 16:30
  4. Mit JS Formularinhalt weitergeben
    Von blood-rose im Forum Javascript & Ajax
    Antworten: 5
    Letzter Beitrag: 18.03.05, 10:45
  5. Formularinhalt senden
    Von smily im Forum ASP
    Antworten: 5
    Letzter Beitrag: 10.08.04, 10:40