[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Поменять значение в textarea
Nuzhser
Я имею следующий код

pair = '(' + arrvals[2] + 'cm' + ' x ' + arrvals[3] + 'cm' + ')';

document.getElementById('description2').value = pair;

переменняа pair выводиться успешно алертом на экран это числа заключенные в скобки.

вторая строка не работает - это попытка поменять существующий на новый текст заключенный в теги textarea где id=description2
В чем может быть проблема? Может то что этот тег внутри таблицы и надо указывать
родительськие теги? Или может то что хтмл генерирует jquery?

С этими именами джаваскрипт не хочет работать как это понять?
<textarea name="product_desc[21][meta]" cols="40" rows="5"></textarea>



Спустя 1 час, 12 минут, 40 секунд (15.11.2011 - 01:08) Игорь_Vasinsky написал(а):
может ?

nameForm.NameTextarea.value = pair;

Спустя 18 часов, 16 минут, 29 секунд (15.11.2011 - 19:25) Nuzhser написал(а):
Если вот так сделать

<script LANGUAGE="JavaScript" type="text/JavaScript">
function readText (form) {
TestVar =form.inputbox.value;
arrvals = TestVar.split('\t');
pair = '(' + arrvals[2] + 'cm' + ' x ' + arrvals[3] + 'cm' + ')';
donator.product_description[3][description].value = pair;
alert(pair);
}
</SCRIPT>

<form name="donator" action="index.php?route=catalog/product/update&amp;token=b7f93408765f295845ce814&amp;product_id=474" method="post" enctype="multipart/form-data" id="form">
<div id="tab-general">
<div id="language3">
<table class="form">
<tr>
<td><input type="text" name="product_description[3][name]" size="100" value="50% мама + 50% папа" />
</td>
</tr>
<tr>
<td><textarea name="product_description[3][meta_description]" cols="40" rows="5"></textarea></td>
</tr>
<tr>
<td><textarea name="product_description[3][meta_keyword]" cols="40" rows="5"></textarea></td>
</tr>
<tr>
<td>
<textarea name="product_description[3][description]" id="description3">&lt;p&gt;
(4.7см х 4.7см)&lt;/p&gt; </textarea></td>
</tr></form>

<FORM NAME="myform" ACTION="" METHOD="GET">
<INPUT TYPE="text" NAME="inputbox" VALUE="" size='80'><P>
<INPUT TYPE="button" NAME="button1" Value="Read" onClick="readText(this.form)">
</FORM>


Не работает даже алерт если забрать
donator.product_description[3][description].value = pair;
алерт работает

Спустя 33 минуты, 40 секунд (15.11.2011 - 19:59) Nuzhser написал(а):
Если так
document.getElementById('description3').value = pair;
то в отдельном файле с этим кодом текстареа меняет свое значение но в странице где надо мертво стоит старое значение.

Спустя 38 минут, 7 секунд (15.11.2011 - 20:37) Nuzhser написал(а):
DOM Inspector узел текстареа видит и id = description3

Спустя 4 часа, 36 секунд (16.11.2011 - 00:37) Nuzhser написал(а):
Firebug выдал такое. Здесь витдно что цифры которые мне надо изменить есть дважды. Когда я пробовал напрямую изменить текстареа ничего не выходило а как мне добраться в джаваскрипте к тем что пониже не знаю.
<td>
<textarea id="description3" name="product_description[3][description]" style="display: none;">&lt;p&gt; ( 4.7см х 4.7см)&lt;/p&gt; </textarea>
<span id="cke_description3" class="cke_skin_kama cke_1 cke_editor_description3" lang="uk" aria-labelledby="cke_description3_arialbl" role="application" title=" " dir="ltr">
<span id="cke_description3_arialbl" class="cke_voice_label">Текстовий редактор</span>
<span class="cke_browser_gecko" role="presentation">
<span class="cke_wrapper cke_ltr" role="presentation">
<table class="cke_editor" cellspacing="0" cellpadding="0" border="0" role="presentation">
<tbody>
<tr role="presentation" style="-moz-user-select: none;">
<tr role="presentation">
<td id="cke_contents_description3" class="cke_contents" role="presentation" style="height:200px">
<iframe frameborder="0" allowtransparency="true" tabindex="0" src="" title="Текстовий редактор, description3, натисніть ALT 0 для довідки." style="width:100%;height:100%">
<html lang="uk" dir="ltr">
<head>
<body class="cke_show_borders" contenteditable="true" spellcheck="false">
<p>
(4.7см х 4.7см)
<br type="_moz">
</p>
</body>
</html>
</iframe>
</td>

Спустя 10 минут, 16 секунд (16.11.2011 - 00:48) Гость_Greg1978 написал(а):
document.getElementById('description2').value = pair;

<td><textarea name="product_description[3][meta_keyword]" cols="40" rows="5"></textarea></td>

вместо name -> id

Спустя 2 минуты, 54 секунды (16.11.2011 - 00:50) Guest написал(а):
<textarea id="description3" name="product_description[3][description]" style="display: none;">&lt;p&gt; ( 4.7см х 4.7см)&lt;/p&gt; </textarea>
а почему скрыт

Спустя 1 минута, 16 секунд (16.11.2011 - 00:52) Guest написал(а):
Стоп так это содержимое CK_Editor, плагина?

Спустя 3 минуты, 33 секунды (16.11.2011 - 00:55) Guest написал(а):
Конечно к внутренностям не доберётесь в нём, мало того что он работает на фрейме так он ведь не переводит ваш HTML в DOM одель так что бы и к ней можно было "протянуть руки"

Спустя 8 часов, 16 минут, 45 секунд (16.11.2011 - 09:12) Michael написал(а):

 ! 

М
Nuzhser, используй теги оформления кода в своих сообщениях !
Michael

Спустя 2 часа, 35 минут, 13 секунд (16.11.2011 - 11:47) Nuzhser написал(а):
Ну обьясните мне эту хрень а то голова болит от джава скрипта
Если делаю так то во все поля инпут вставляет переменную но мне же не надо во все
 
var areas = document.getElementsByTagName("input");

for (var i = 0; i < areas.length; i++)
{
areas[i].defaultValue = arrvals[5];
}


Вот и обращаюсь к одному из них и ни хрена

 
document.getElementsByName("product_discount[0][price]").defaultValue = arrvals[5];


Неужто надо вычислять его номер в цикле и там же делать но это же не наш метод.
То есть если этот инпут вложенный в таблицу которая вложена в форму вот как ниже то как мне добраться до 19.8800 чтобы его изменить


<form id="form" enctype="multipart/form-data" method="post" action="catalog/product/update&token=b8b76adf1c4ecb8656776e5b9f6e33f876&product_id=474">
<div
id="tab-general" style="display: block;">
<div
id="languages" class="htabs">
<a
class="selected" href="#language3" style="display: inline;">
<a
href="#language2" style="display: inline;">
<img
title="Russian" src="view/image/flags/ru.png">
Russian
</a>
</div>
<div
id="language3" style="display: block;">
<div
id="language2" style="display: none;">
</div>
<div
id="tab-data" style="display: none;">
<div
id="tab-links" style="display: none;">
<div
id="tab-attribute" style="display: none;">
<div
id="tab-option" style="display: none;">
<div
id="tab-discount" style="display: none;">
<table
id="discount" class="list">
<thead>
<tbody
id="discount-row0">
<tr>
<td
class="left">
<td
class="right">
<td
class="right">
<input
type="text" size="2" value="0" name="product_discount[0][priority]">
</td>
<td
class="right">
<input
type="text" value="19.8800" name="product_discount[0][price]">
</td>



Спустя 15 минут, 39 секунд (16.11.2011 - 12:03) sergeiss написал(а):
Цитата (Гость_Greg1978 @ 16.11.2011 - 01:48)
вместо name -> id

Вот тут было написано правильное решение проблемы, только больно уж малозаметно.

Говорю более явно: ты обращаешься к элементу по id, а установил для него name! Сделай
<textarea id="description2" cols="40" rows="5"></textarea>

и тогда твой код заработает
document.getElementById('description2').value = 'new text';


А все остальные ответы в теме - словоблудие ;)

PS. Была тут ошибка, подредактировал.

Спустя 12 часов, 18 минут, 32 секунды (17.11.2011 - 00:21) Nuzhser написал(а):
Sergeiss Greg1978 спасибо подставил идешки всюду работает кроме текстареа где цкеэдитор. Видать не судьба но хоть так это тоже неплохо.

Спустя 7 часов, 43 минуты, 14 секунд (17.11.2011 - 08:05) sergeiss написал(а):
Цитата (Nuzhser @ 17.11.2011 - 01:21)
всюду работает кроме текстареа где цкеэдитор

Поподробнее, плз... Не понятно, о чем речь. Должно работать - значит будет работать smile.gif


_____________
Лэт ит би
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.