cgi:irc Textarea mit Code via Klick füllen

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

  • cgi:irc Textarea mit Code via Klick füllen

    Hallöle,

    hätte da wieder nen klitze kleines Problemchen

    Ich fuchtel gerade bischen im cgi:irc herum und wollt eine klickbare Smiley Tabelle einfügen.
    Allerdings misslingt mir das ganze Unterfangen.

    Folgendermaßen wollt ich es lösen:

    PHP-Code:
    <body onload="load()" onfocus="fns()" class="form-body">
    <
    form name="myform" onSubmit="return cmd();" class="form-form">
    <
    span id="nickname" class="form-nickname"></span>
    <
    input type="text" class="form-say" name="say" autocomplete="off"
      
    onpaste="return pastedata(window.clipboardData.getData('Text',''));"
    >
    </
    form
    Die Textarea mit dem Namen "say" soll das Ziel der Smileycodes sein.
    Hab mir über die Suche Themen wie diese reingezogen und wollt
    dann mittels:

    PHP-Code:
    <script>
    function 
    smilie(thesmilie) {
    // inserts smilie text
        
    document.vbform.say.value += thesmilie+" ";
        
    document.vbform.say.focus();
    }
    </
    script
    Im Header dann die Smileycodes über
    Code:
    <a href="javascript:smilie('smileycode')"><img src="images/grin.gif" alt="grin" border="0"></a>
    Die Smileys einfügen.

    Schaut dann etwa so aus:

    PHP-Code:
    <form name="myform" onSubmit="return cmd();" class="form-form">
    <
    span id="nickname" class="form-nickname"></span>
    <
    input type="text" class="form-say" name="say" autocomplete="off"
      
    onpaste="return pastedata(window.clipboardData.getData('Text',''));"
    >
    <
    a href="javascript:smilie('smileycode')">
    <
    img src="images/grin.gif" alt="Grins" border="0"></a>
    </
    form
    Bekomme im IE aber den Fehler zurück:
    'document.vbform.say' ist Null oder kein Objekt

    Hab ich da jetzt irgendwo nen denkfehler drin ?

    Bin für jede Hilfe dankbar

    [Edit]
    Koischerweise trennt das Forum das wort "javascript" in den PHP & CODE Tags.
    Sind aber in wirklichkeit zusammengeschrieben
    Zuletzt geändert von Wojti; 16.04.2006, 16:27.

  • #2
    Tja, so schnellt lernt man wenn man seinen eigenen Beitrag mal Gründlich durchliesst.

    Statt "vbform" muss natürlich "myform" rein.

    Blöden Anfängerfehler

    Kommentar


    • #3
      O.K.

      eine Frage hät ich dann doch noch

      Ich will den Code nun aus Platzgründen und weil es sich Optisch anbietet,
      von einem Frame zum anderen schicken.

      PHP-Code:
      function smilie(smilietext) {
              
      parent.fform.myform.say.value += smilietext+" ";
              
      //parent.fform.myform.say.focus();

      Funktioniert einwandfrei im IE, alerdings nicht beim Mozilla und seinen kleinen Brüdern.

      Jemand eine Idee ?

      Kommentar


      • #4
        Puh, hab die halbe Nacht weitergespielt.

        also auch mittels durchnummerierung klappts nicht.

        Mittels:
        PHP-Code:
        <script type="text/javascript">
        for (var 
        0parent.frames.lengthi++)
          
        alert(parent.frames[i].name);
        </
        script
        Hab ich mir die Frames anzeigen lassen.
        Das Zielframe ist auch wirklich fform und in der Reihenfolge das 4. Fenster.

        Also versucht mittels;
        PHP-Code:
        parent.frames[3].myform.say.value += smilietext+" ";
                
        //parent.frames[3].myform.say.focus();

        An das Frame zu gelangen.
        Aber auch kein Erfolg.
        IE und Opera schlucken das ganze Problemlos,
        NS, FF und Mozilla lehnen die Mitarbeit generell ab.

        Kommentar


        • #5
          Original geschrieben von Wojti
          NS, FF und Mozilla lehnen die Mitarbeit generell ab.
          Und wie sieht es mit deiner Kooperationsbereitschaft aus - in dem du mal einen Blick in die Javascript-Konsole wirfst ...?
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Hi und danke für den Tip mit der Javascript Console.

            Wusste garnicht dass es diese gibt

            Das Problem lag darin, dass er das/den Parent nicht finden konnte.
            Offensichtlich ist das dem IE und Opera nicht so wichtig.

            Hab mich jetzt durchgehängelt und über opener.parent.frames[3]
            das Textfeld ansprechen können.
            (Aus einem extra Pop Up heraus)

            Muss nur noch herausfinden, wie ich nach einem klick in dem
            Popup, welches das Textfeld füllt, das Textfeld auch wieder
            als Aktives Feld setze.

            Denn nach <Enter> füllt er den Code nochmal ins Textfeld statt den Text abzuschicken

            Grüße Wojti

            Kommentar

            Lädt...
            X