CODE
function doCOLOR(obj)
{
textarea = document.getElementById(obj);
var url = document.getElementById("kolor").value;
var scrollTop = textarea.scrollTop;
var scrollLeft = textarea.scrollLeft;
if (url != '' && url != null) {
if (document.selection)
{
textarea.focus();
var sel = document.selection.createRange();
if(sel.text==""){
sel.text = '[/color]';
} else {
sel.text = '' + sel.text + '';
}
//alert(sel.text);
}
else
{
var len = textarea.value.length;
var start = textarea.selectionStart;
var end = textarea.selectionEnd;
var sel = textarea.value.substring(start, end);
if(sel==""){
var rep = '';
} else
{
var rep = '[color=' + url + ']' + sel + '';
}
//alert(sel);
textarea.value = textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
textarea.scrollTop = scrollTop;
textarea.scrollLeft = scrollLeft;
}
}
}
{
textarea = document.getElementById(obj);
var url = document.getElementById("kolor").value;
var scrollTop = textarea.scrollTop;
var scrollLeft = textarea.scrollLeft;
if (url != '' && url != null) {
if (document.selection)
{
textarea.focus();
var sel = document.selection.createRange();
if(sel.text==""){
sel.text = '[/color]';
} else {
sel.text = '' + sel.text + '';
}
//alert(sel.text);
}
else
{
var len = textarea.value.length;
var start = textarea.selectionStart;
var end = textarea.selectionEnd;
var sel = textarea.value.substring(start, end);
if(sel==""){
var rep = '';
} else
{
var rep = '[color=' + url + ']' + sel + '';
}
//alert(sel);
textarea.value = textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);
textarea.scrollTop = scrollTop;
textarea.scrollLeft = scrollLeft;
}
}
}
a to mam w pliku html:
Wiem, że kod jest nieprawidłowy, dlatego proszę o pomoc. Chciałbym, żeby po wywołaniu funkcji doCOLOR wstawiany był znacznik "[color=]" z aktualnie wybranym kolorem w polu select a nie z pierwszą pozycją(w tym wypadku czarny). Jak to zrobić? Pomożecie?