[JavaScript] TinyMCE Editor und InputChecker?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [JavaScript] TinyMCE Editor und InputChecker?

    Hallo Leute,

    ich verwende den TinyMCE in einem Formular, bei welchem ich überprüfen wollte ob die Textare gefüllt ist oder nicht?

    Das ist das Feld das überprüft werden sollte:
    PHP-Code:
    <textarea id="p_text" name="p_text"  rows="50" cols="90" ><?=$p_text?></textarea>


    <input type="button" class="sendbutton_content" onClick="return checkinput()" name="send_button" value="SEND">
    Hier mein JS CODE zur überprüfung:
    PHP-Code:
    function checkinput() 
                {            
                    
    alert(window.document.policy_form.policytitel.value.length);
                    
    alert(window.document.policy_form.p_text.value.length);
                  if(
    window.document.policy_form.policytitel.value=='Policy Titel' 
    || window.document.policy_form.policytitel.value==''
                  { 
                     
    alert('Bitte Policy Titel eintragen!'); 
                     
    document.policy_form.policytitel.focus();
                     return 
    false
                  }else if(
    window.document.policy_form.verteilenan.value==''
                  { 
                     
    alert('Es wurde kein Verteiler angegeben!'); 
                     
    document.policy_form.verteilenan.focus();
                     return 
    false
                  }
                  else if(
    window.document.policy_form.p_text.value==''
                  { 
                     
    alert('Es wurde kein Text eingetragen!'); 
                     return 
    false
                  }else{
                      
    window.document.policy_form.submit();
                  }
                } 

    Jedoch wenn ich das Fled p_text überprüfe, ist es immer lehr! Liegt wohl daran dass der Tiny Mce da ein IFRAME einbindet und ich auf dieses Feld so nicht zugreifen kann!

    Weis jemand wie ich überprüfen kann ob das Feld gefüllt ist, damit ich danach das Form abschicken kann? Sollte in JS sein nicht in PHP!
    (Könnte man das im Tiny MCE einstellen?)

    DANKE
    Mfg
    Mike
    Zuletzt geändert von Morpheus2100; 14.02.2008, 15:29.

  • #2
    Seit wann ist ein Button eine Textarea??
    Und via
    Code:
    document.getElementById('ID des Feldes');
    kannst du nicht auf das Element zugreifen?
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      Guck dir mal die Eigenschaften
      Code:
      tinyMCE.editors
      und
      Code:
      tinyMCE.activeEditor
      an. Damit kannst du auf alle bzw. die aktuell aktive Editorinstanz zugreifen. Über
      Code:
      tinyMCE.activeEditor.contentDocument.getElementsByTagName( 'body' )[0].innerHTML;
      kommst du beispielsweise an den Inhalt des aktiven Editors.

      Kommentar


      • #4
        Original geschrieben von jahlives
        Seit wann ist ein Button eine Textarea??
        Und via
        Code:
        document.getElementById('ID des Feldes');
        kannst du nicht auf das Element zugreifen?
        bekomme ich ein object zurück! wenn ich mit Value drauf greifen will krieg ich wieder nichts!

        DANKE

        Kommentar


        • #5
          Original geschrieben von PHP-Desaster
          Guck dir mal die Eigenschaften
          Code:
          tinyMCE.editors
          und
          Code:
          tinyMCE.activeEditor
          an. Damit kannst du auf alle bzw. die aktuell aktive Editorinstanz zugreifen. Über
          Code:
          tinyMCE.activeEditor.contentDocument.getElementsByTagName( 'body' )[0].innerHTML;
          kommst du beispielsweise an den Inhalt des aktiven Editors.
          Also wenn ich das hier versuche erhalte ich nur, tinyMCE.activeEditor.selection ist null oder kein objekt!

          PHP-Code:
          alert(tinyMCE.activeEditor.selection.getContent()); 
          Könnt ihr mir da weiterhelfen?

          DANKE!

          Kommentar


          • #6
            Und
            Code:
            document.getElementById('ID des Feldes').getContent();
            ergibt ebenfalls nix?
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Kommentar


            • #7
              Hier noch der angehängte js code!
              Angehängte Dateien

              Kommentar


              • #8
                Du musst nicht über selection gehen. Dieses Objekt macht nur Sinn, wenn du den aktuell markierten Bereich im Editor erhalten willst. Für den kompletten Inhalt des Editors habe ich dir schon den Code gegeben.

                @jahlives: Wenn du den Tiny verwendest, kannst du mit dem Textfeld nichts anfangen, da der Inhalt im IFrame des Editors ist.

                Kommentar


                • #9
                  Original geschrieben von jahlives
                  Und
                  Code:
                  document.getElementById('ID des Feldes').getContent();
                  ergibt ebenfalls nix?
                  PHP-Code:
                  if(document.getElementById('p_text').getContent()==''
                  macht absolut nichts! :-(

                  Kommentar


                  • #10
                    Original geschrieben von PHP-Desaster
                    @jahlives: Wenn du den Tiny verwendest, kannst du mit dem Textfeld nichts anfangen, da der Inhalt im IFrame des Editors ist. [/B]
                    Genau das hab ich mir gedacht! Mal schauen obs jetzt geht?

                    DANKE!

                    Kommentar


                    • #11
                      Original geschrieben von PHP-Desaster
                      Du musst nicht über selection gehen. Dieses Objekt macht nur Sinn, wenn du den aktuell markierten Bereich im Editor erhalten willst. Für den kompletten Inhalt des Editors habe ich dir schon den Code gegeben.
                      Also wenn ich das so mache:
                      PHP-Code:
                      alert(tinyMCE.activeEditor.contentDocument.getElementsByTagName'body' )[0].innerHTML); 
                      Bekomme ich ebens null oder kein objekt zurück! :-(

                      Kommentar


                      • #12
                        [list=1][*]Welcher Browser?[*]Hast du einen Tiny im Dokument?[*]Hast du einen Editor gerade aktiv (also tinyMCE.activeEditor ist ein Objekt)?[*]Mal über tinyMCE.editors.deineID gegangen?[/list=1]

                        Kommentar


                        • #13
                          Original geschrieben von PHP-Desaster
                          [list=1][*]Welcher Browser?[*]Hast du einen Tiny im Dokument?[*]Hast du einen Editor gerade aktiv (also tinyMCE.activeEditor ist ein Objekt)?[*]Mal über tinyMCE.editors.deineID gegangen?[/list=1]
                          - Also ich muss im ie6/7 entwickeln.

                          - Tiny ist so eingebunden:
                          PHP-Code:
                           <script language="javascript" type="text/javascript" src="WYSIWYG/jscripts/tiny_mce/tiny_mce.js"></script
                          Wenn ich Das Objekt ausgeben will wie folgt bekommen ich, "undefined" !
                          PHP-Code:
                          alert(tinyMCE.activeEditor
                          Wie soll ich das über die ID machen?

                          Vielen Dank für euere Hilfe!

                          Mfg
                          Mike

                          Kann mir da keiner Helfen?
                          Zuletzt geändert von Morpheus2100; 15.02.2008, 13:15.

                          Kommentar


                          • #14
                            Ich komm mal mit der nächsten Liste...
                            1. Hast du eine Textarea?
                            2. Wird diese vom Tiny ersetzt?
                            3. Welche ID hat diese Textarea?
                            4. Kannst du mit tinyMCE.editors.ID_DER_TEXTAREA auf den Editor zugreifen?

                            Kommentar


                            • #15
                              Original geschrieben von PHP-Desaster
                              Ich komm mal mit der nächsten Liste...
                              1. Hast du eine Textarea?
                              2. Wird diese vom Tiny ersetzt?
                              3. Welche ID hat diese Textarea?
                              4. Kannst du mit tinyMCE.editors.ID_DER_TEXTAREA auf den Editor zugreifen?
                              1. Ja ich habe eine Textarea.
                              PHP-Code:
                              <textarea id="p_text" name="p_text"  rows="50" cols="90" ><?=$p_text?></textarea>
                              2. Wie meinst du wird diese von Tiny Mce ersetzt?
                              Also wenn ich per postabschicke und dann auf $_POST[p_text] zugreife bekomme ich den eingetragenen Text!

                              3. ID = "p_text"

                              4. Also mit "alert(tinyMCE.editors.p_text);" Hatte ich leider wieder keinen Erfolg!

                              Vielleicht könnt ihr mir noch weiterhelfen!

                              Danke
                              Schöne Grüße
                              Morph

                              Kommentar

                              Lädt...
                              X