Synchronesr Text in Tabelle
ChristianL
- javascript
0 andy0 ChristianL0 Struppi
0 andy
0 wucher wichtel
Hi,
ich habe folgendes Problem und irgendwie komm ich nicht weiter. Ich hoffe so etwas ist überhaupt in Javascript nötig, oder benötige dazu Ajax?
In einem Textfeld (in einem Formular) soll man einen Text schreiben können. Dieser soll synchron den Text in der darüberliegenden Tabelle anpassen.
Könnt Ihr mir vielleicht helfen? Bin für jeden Tipp dankbar.
Hier mein bisheriger Code, der aber nur den aktuell gedrückten Buchstaben anzeigt, aber auch nur als Zeichencode
<html>
<head>
<script type="text/javascript">
function myTextChange(evt){
var charCode = evt.keyCode;
document.getElementById("textfeld").innerHTML=charCode;
}
</script>
</head>
<body>
<table width="300">
<tr>
<th bgcolor="#000000" style="color:#ffffff;font-family:verdana">
Werbetext:
</th>
</tr>
<tr bgcolor="aaaaaa">
<td id="textfeld" height="50">
</td>
</tr>
</table>
<form name="myForm" style="font-family:verdana" onkeyup="myTextChange(event);">
Werbetext <input type="text" id="werbung"/>
</form>
</body>
</html>
In einem Textfeld (in einem Formular) soll man einen Text schreiben können. Dieser soll synchron den Text in der darüberliegenden Tabelle anpassen.
Ich habe vor langem einmal so was gemacht:
<html>
<title></title>
<head>
<script type='text/javascript'>
//dynamically update the preview when user types a text
function print(input){
val = input.value;
while(val.search("\n")>=0){
val = val.replace("\n","<br>");
}
document.getElementById('preview').innerHTML = val;
}
</script>
<head>
<body>
<textarea id='input' rows='10' cols='40' onkeyup="print(this)"></textarea>
<div id='preview'></div>
</body>
</html>
Hey Andi,
vielen Dank! Funktioniert super! Hast mir das Wochenende gerettet ;)
Viele Grüße
function print(input){
val = input.value;
while(val.search("\n")>=0){
val = val.replace("\n","<br>");
}
uiui, das geht in einem Rutsch viel einfacher und schneller, schau dir die replace Funktion mal genauer an:
function print(input)
{
var val = input.value;
if(!val) return;
val = val.replace( /\n/g, '<br>');
document.getElementById('preview').innerHTML = val;
}
Struppi.
»»schau dir die replace Funktion mal genauer an:
Gute Anmerkung, danke.
Hallo!
ich habe folgendes Problem und irgendwie komm ich nicht weiter. Ich hoffe so etwas ist überhaupt in Javascript nötig, oder benötige dazu Ajax?
AJAX _ist_ JavaScript. AJAX brauchst du nur, wenn du mit dem Server kommunizieren willst. Aber das willst du ja nicht.
Zu deinem Problem:
Du brauchst 2 Textfelder. In eines wird der Text geschrieben und in eines wird von JavaScript der Text des ersten Feldes geschrieben.
Etwa so sieht es aus:
Das HTML:
<type="text" id="feld1"/> type="text" id="feld2"/>
Das JavaScript:
var a = document.getElementById("feld1").value;
document.getElementById("feld1").value = a;
Jetzt musst du es noch anpassen und in eine Funktion packen.
ciao, ww