Hallo,
ich habe auf meiner Seite ein Gästebuch, wo ich das Formatieren
des Textes ähnlich wie hier im Forum zulasse.
z.B. so
durch das onClick wird dann dieses javascrip ausgeführt.
Jetzt würde ich gerne im Formular (Adminbereich) ein zweites
Textarea für Kommentare habe und den Text ebenso Formatieren
können.
Das Zweite Textarea muss ja ein neuen Namen bekommen,
dann kann ich aber das javascrip nicht mehr nutzen.
Muss ich jetzt das Script doppelt einbauen oder kann ich es
irgendwie erweitern? mit javascrip habe ich mich bis jetzt noch nicht
so auseinander gesetzt.
Gruß Ingo
ich habe auf meiner Seite ein Gästebuch, wo ich das Formatieren
des Textes ähnlich wie hier im Forum zulasse.
z.B. so
PHP-Code:
<input type="button" value=" B " style="font-weight:bold; width: 30px;" onClick="insert('[ b ]', '[ /b ]')">
<textarea style="width: 98%" name="inhalt" class="post" rows="10"></textarea>
PHP-Code:
<script type="text/javascript">
<!--
function insert(aTag, eTag) {
var input = document.forms['formular'].elements['inhalt'];
input.focus();
/* für Internet Explorer */
if(typeof document.selection != 'undefined') {
/* Einfügen des Formatierungscodes */
var range = document.selection.createRange();
var insText = range.text;
range.text = aTag + insText + eTag;
/* Anpassen der Cursorposition */
range = document.selection.createRange();
if (insText.length == 0) {
range.move('character', -eTag.length);
} else {
range.moveStart('character', aTag.length + insText.length + eTag.length);
}
range.select();
}
/* für neuere auf Gecko basierende Browser */
else if(typeof input.selectionStart != 'undefined')
{
/* Einfügen des Formatierungscodes */
var start = input.selectionStart;
var end = input.selectionEnd;
var insText = input.value.substring(start, end);
input.value = input.value.substr(0, start) + aTag + insText + eTag + input.value.substr(end);
/* Anpassen der Cursorposition */
var pos;
if (insText.length == 0) {
pos = start + aTag.length;
} else {
pos = start + aTag.length + insText.length + eTag.length;
}
input.selectionStart = pos;
input.selectionEnd = pos;
}
/* für die übrigen Browser */
else
{
/* Abfrage der Einfügeposition */
var pos;
var re = new RegExp('^[0-9]{0,3}$');
while(!re.test(pos)) {
pos = prompt("Einfügen an Position (0.." + input.value.length + "):", "0");
}
if(pos > input.value.length) {
pos = input.value.length;
}
/* Einfügen des Formatierungscodes */
var insText = prompt("Bitte geben Sie den zu formatierenden Text ein:");
input.value = input.value.substr(0, pos) + aTag + insText + eTag + input.value.substr(pos);
}
}
//-->
</script>
Textarea für Kommentare habe und den Text ebenso Formatieren
können.
Das Zweite Textarea muss ja ein neuen Namen bekommen,
dann kann ich aber das javascrip nicht mehr nutzen.
Muss ich jetzt das Script doppelt einbauen oder kann ich es
irgendwie erweitern? mit javascrip habe ich mich bis jetzt noch nicht
so auseinander gesetzt.
Gruß Ingo
Kommentar