kostenloser Webspace werbefrei: lima-city


replace() -Problem

lima-cityForumDie eigene HomepageHTML, CSS & Javascript

  1. Autor dieses Themas

    k*****2

    Hallo,
    ich bin gerade dabei ein Programm zu schreiben, das in einem beliebingen Text (der über ein eingabefeld eingegeben werden kann) eine bestimmte Zeichenfolge sucht und dann farblich markiert wieder ausgiebt.

    Dabei bin ich auf folgendes Problem gestossen:

    replace muss an erster Stelle (zwischen den \'//\') einen Echten Text und KEINE Variable haben.
    wie schaffe ich das aber trotzdem?

    (replace(/document.all.Eingabefeld1.value/g, ...) geht nicht...)

    danke für zahlreiche antworten...
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. d***********a

    Erst mal: dein document.all ist sowieso schon aua, das ist Microsoft-Syntax (siehe auch hier : http://de.selfhtml.org/javascript/objekte/all.htm#allgemeines )

    Warscheinlich suchst du sowas wie das hier :
    <head>
    <script>
    function ersetzen() {
    teil = document.Test.inhalt.value;
    inhalt = document.getElementById(\"txt\").innerHTML;
    teile = inhalt.split(teil);
    inhalt = \"\";
    i=0;
    while (i < teile.length) {
    if (i < teile.length-1) {inhalt = inhalt+teile[i]+\"<font style=\'color:red; background-color:yellow;\'>\"+teil+\"</font>\"; }
    else {inhalt = inhalt+teile[i]; }
    i++;
    }
    document.getElementById(\"txt\").innerHTML = inhalt;
    }
    </script>
    </head>
    <body>
    <div id=\"txt\">Ein langer Text ... Text und noch mehr Text ... soein schöner Text aber auch :)</div>
    
    <form  name=\"Test\" action=\"\">
    <input type=\"text\" name=\"inhalt\" />
    <input onclick=\"ersetzen();\" type=\"button\" value=\"Ersetzen !\" />
    </form>
    </body>

    Wie du die Markierungen wieder loswirst, dass musst du dir selber überlegen :).

    mfg dapizzafressa

    PS: Wie du vll. erkennst, verwende ich replace() nicht

    PSS: Wenn man editiert, so scheint es, wurde der Code leicht verunstaltet ... Forumsfehler ?!


    Beitrag geändert: 21.12.2007 16:36:23 von dapizzafressa
  4. Hey,
    ich weiß zwar nicht, wie Dein Code aussieht, aber Du musst document.all.Eingabfeld1.value erst in eine Variable schreiben vielleicht so:

    suche = document.all.Eingabfeld1.value;
    replace(suche);



    nur vom Prinzip her. Ist natürlich fragwürdig, da ich Deinen Code nicht kenne.

    Lg,
    agentelmo
  5. @ agentelmo: so funktioniert das leider nicht. der reguläre Ausdruck muss zwischen / und / stehen. Er kann, soweit mir bekannt, auch nicht angepasst werden.

    @ kamel92: versteh nicht ganz, wozu dort den kompletten Inhalt einer Variable brauchst. schließlich wird das dann innerhalb des Strings, auf den du replace() anwendest gesucht und dann vielleicht ausgetauscht. wenn du vielleicht etwas mehr Code posten würdest, könnte man vielleicht gucken, was du erreichen willst und ob man das vielleicht auch anders lösen kann.
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!