text input per javascript in textarea !

mexximillian

Mitglied
Hi zusammen,

Ich hab ein Problem....Ich möchte per Mousover über eine kleine grafik ,einen text aus einer auf dem server befindlichen textdatei in eine tabelle (bzw. formfield, textarea) laden. Dieser Text soll bei Mousout auch wieder verschwinden. Jetzt habe ich leide sehr wenig ahnung von Javascript, habe das ganze bis jetzt nur mit hilfe eines pop-ups gelöst.....aber wie bekomme ich diesen text in das aktive fenster ? bzw. in meine table ?

Für Hilfe wär ich sehr dankbar
 
Zuletzt bearbeitet:
...........da fällt mir ein, gibt es eventuell die möglichkeit per mouseover ein php include zu starten, das bei mouseout wieder verschwindet, oder ein neues include startet ? das wär vielleicht die beste möglichkeit, aber vielleicht stoße ich da ja auch schon an die grenzen von javascript ?
 
Lese den Inhalt bereits vorab aus der DB und setze seine Eigenschaft per display : none (im Div Container z.B.) auf sicht bar und per MouseOver lösst du dann ein Wechsel zu display : block aus.
 
das ich da nich selbst drauf gekommen bin...

Hi nochmal,

Danke für die schnellen Antworten.....ich denke ich wähle die JS lösung.....nur eine frage noch, wie geb ich dem script jetzt den Mouseover Befehl ? Ich hab mal des testscript von selfhtml da.....was muss ich da jetzt noch veränden ?

Code:
<html><head><title>Test</title>
<script type="text/javascript">
<!--
var Neu = "neuer <b>fetter<\/b> Text";
function Aendern() { document.all.meinAbsatz.innerHTML = Neu; }
//-->
</script>
</head><body>
<p id="meinAbsatz">Text</p>
<a href="javascript:Aendern()">Anderer Text</a>
</body>
</html>
 
PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
	<title>Unbenannt</title>
</head>
<body>
<a href="#" onmouseover="document.getElementById('textblock').style.display='block';" onmouseout="document.getElementById('textblock').style.display='none';">Testlink</a>
<div id=textblock style="display:none">Text der aus der Datenbank kommt</div>
</body>
</html>
 
Das Problem wird sein, dass du den Text vom Server ja irgendwie in dein
JavaScript unterbringen musst.

Denn so (angenommen, du nutzt PHP):
PHP:
var sText = "<?php echo $sData; ?>";
Scheitert es, wenn der Text Zeilenumbrüche enthält, weil JavaScript diese
innerhalb von Quotes nicht akzeptiert.

Eine Möglichkeit:
Den Text gleich von vornerein in eine nicht sichtbare Textarea schreiben und ihn
daraus per JavaScript auslesen. Da hast du dann den Vorteil, dass du in der
Textarea mehrzeiligen Text einfügen kannst, ihn aber ohne Probleme wieder mit
JavaScript weiterverarbeiten kannst.

Ein konkretes Beispiel:
PHP:
var sTmpMem;
function swapText( a_bMode )
{
    if ( a_nMode === true ) {
        sTmpMem = window.document['oTextForm']['oTextForm'].value;
        window.document['oTextForm']['oNewText'].value
            = window.document['oTextForm']['oFetchText'].value;
    } else {
        window.document['oTextForm']['oNewText'].value = sTmpMem;
        sTmpMem = "";
    }
}

<form name="oTextForm" action="lala.html">
    <textarea style="display:none;" name="oFetchText"><?php
        echo htmlentities($sData); ?></textarea>
    <textarea style="width:400px;height:200px;" name="oNewText"></textarea>
</form>

<a href="wohinduwillst.html" onMouseOver="swapText( true );"
   onMouseOut="swapText( false );">Klick</a>
ungetestet, abwer ich hoffe, du verstehst, was ich meine.


Edit: da war wohl jemand schneller :)
 
DANKE !

Danke nochmal für die mühe....ich werds ausprobieren....Aber nehemen wir doch mal an, ich hab ein .txt file, und will nur dieses file einfach in ne table includen....gibts da nich ne einfachere methode ?

Das habe ich noch gefunden.....aber funktionieren tuts bei mir nicht.......


hier
 
Was verstehst du unter "einfacherer Methode"?
Gut, zugegeben ist es nicht gerade schönster Stil, den Text in eine textarea zu
schreiben und diese dann unsichtbar zu machen, um später den Inhalt daraus
auszulesen.

Aber die Methode ist eine einfache Lösung ;)

Du kannst natürlich das gleiche Spielchen machen, nur halt nicht den
ausgelsenen Text in eine Textarea zu schreiben, sondern in einer Tabellen-Zelle:
Guck dir dazu mal, wie schon gesagt wurde, innerHTML an!
PHP:
window.document.getElementById("oToChange").innerHTML = sDaRealValue;

[...]

<td id="oToChange">Hier erscheint später ein Text...</td>
 
.....

Und nochmal Danke :)

man man man, hier wird einem echt geholfen......aber die fragen gehen mir trotzdem nicht aus ;)

So wie ich das verstanden habe funktioniert die funktion
Code:
document.all.meinAbsatz.innerHTML

in Mozilla nicht. Wie muss man Sie nun abgleichen, um sie für alle Browser conform zu machen ?

PS: Du hast recht, die lösung war einfach...sitze wohl nur schon zu lange vorm PC heut :)
 

Neue Beiträge

Zurück