Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   скрипты в TEXTAREA (https://javascript.ru/forum/misc/7473-skripty-v-textarea.html)

KAKAT 03.02.2010 13:52

скрипты в TEXTAREA
 
Я не знаю как сделать так, чтобы при нажатии на кнопку скрипт начинал работать в TEXTAREA. К примеру, при нажатии на кнопку FAT в текстареа отображаеться <b></b>
<script language="JavaScript">
function fat()
{
var f="<b></b>";
document.write=(""f"");
}
</script>
<form>
Form name:<INPUT TYPE="textarea" NAME="text1" VALUE="1">
<P>
<input name="button1" type="button" value="FAT"
onClick="text1.fat()">
</form>

Андрей_Ш 03.02.2010 13:57

<script language="javascript">
  function zzwrite( )
  {
   document.form1.textarea1.value = "fuck";
  }
 </script>
 <form name="form1">
  <input type="button" value="Submit" onClick="zzwrite( );">
  <input type="text" name="textarea1" size="5">
 </form>

Tim 03.02.2010 14:21

Вот более удобный вариант. Заключает выделенную область TEXTAREA между a и b. Я так понял вам именно BB-коды нужны
function compass (a, b)
{
	// Ссылка на TEXTAREA
	var txt = document.getElementById("txt_1");
	
	// Для Microsoft IE
	try {
		// Установка фокуса на текстовом поле
		txt.focus();
		
		// Создать объект из текущего выделения
		var range = document.selection.createRange();
		
		// Изменение выделенной области
		range.text = a + range.text + b;
	}
	// Для Mozilla/Gecko
	catch (e) {
		// Позиция начала выделения
		var start = txt.selectionStart;
		
		// Позиция конца выделения
		var end = txt.selectionEnd;
		
		// Изменение выделенной области
		txt.value = txt.value.substr(0, start) + a + txt.value.substr(start, end-start) + 
			b + txt.value.substr(end, txt.value.length);
	}
}


Пример использования:
<textarea cols="90" rows="10" id="txt_1"></textarea>
<input type="button" value="Жирный" onclick="compass ('[B]', '[/B]')"/>
<input type="button" value="Курсив" onclick="compass ('[I]', '[/I]')"/>
<input type="button" value="Смайлик" onclick="compass (':-)', '')"/>

KAKAT 03.02.2010 14:41

БЛАГОДАРЮ!


Часовой пояс GMT +3, время: 14:56.