Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Конструкция из двух textarea (https://javascript.ru/forum/misc/53716-konstrukciya-iz-dvukh-textarea.html)

VadimW 15.02.2015 05:22

Конструкция из двух textarea
 
Всем привет. У меня такой вопрос: имеется к примеру 2 textarea (пусть будет id="1t" и id="2t")...
Как сделать так, что бы текст из каждого textarea копировался в конструкцию ниже? (например при нажатии на кнопку)

<textarea class="manFl" name="message" id="message">
<table><tbody><tr>тут текст из id="1t"<td></td><td>тут текст из id="2t"</td></tr></tbody></table>
</textarea>

Дайте пожалуйста ссылки на примеры того, что я описал :yes:
___________________________
Ответ решения этой проблемы:
возможно, кому нибудь понадобится
<html>
<head>
</head>
<body>

<textarea id="1t">тут текст из id="1t"</textarea>
<textarea id="2t">тут текст из id="2t"</textarea>
<textarea id="mes"></textarea>
<input type="button" value="Перенести" onclick="mix();">
<script>
function mix() {
    var tpl = "<table><td>{1t}</td><td>{2t}</td></table>";
    tpl = tpl.replace(/{(.*?)}/g, function(match, id) {
        return document.getElementById(id).value;
    });
    document.getElementById("mes").innerHTML = tpl;
}
</script>

</body>
</html>

danik.js 15.02.2015 07:34

<textarea id="1t">тут текст из id="1t"</textarea>
<textarea id="2t">тут текст из id="2t"</textarea>
<script>
var tpl = "<table><td>{1t}</td> <td>{2t}</td></table>";
tpl = tpl.replace(/{(.*?)}/g, function(match, id) {
    return document.getElementById(id).value;
});
alert(tpl);
</script>

Aetae 15.02.2015 15:15

Тут определённо нужен angular.:lol:

VadimW 16.02.2015 18:34

danik.js, спасибо, работает. Только как выводить не через alert, а в id="message". То есть в <textarea class="manFl" name="message" id="message">ВОТ СЮДА<textarea>

VadimW 17.02.2015 03:21

Я вот немного допилил, всё почти сделано, НО только когда два раза нажимаешь на кнопку срабатывает правильно. Как сделать, что бы при одном нажатии работало?
<html>
<head>
</head>
<body>

<textarea id="1t">тут текст из id="1t"</textarea>
<textarea id="2t">тут текст из id="2t"</textarea>
<textarea id="mes"></textarea>
<input type="button" value="Перенести" onclick="start();">
<script>
var tpl = "<table><td>{1t}</td> <td>{2t}</td></table>";

function start() {
document.getElementById("mes").innerHTML=tpl;

tpl = tpl.replace(/{(.*?)}/g, function(match, id) {
    return document.getElementById(id).value;
});
}
</script>

</body>
</html>

рони 17.02.2015 03:39

Цитата:

Сообщение от VadimW
start

плохое имя для функции

function mix() {
    var tpl = "<table><td>{1t}</td> <td>{2t}</td></table>";
    tpl = tpl.replace(/{(.*?)}/g, function(match, id) {
        return document.getElementById(id).value;
    });
    document.getElementById("mes").innerHTML = tpl;
}

VadimW 17.02.2015 03:43

рони, спасибо большое - довели до ума)) И всем спасибо, тем кто хоть чем то решил помочь :thanks:

VadimW 17.02.2015 03:59

Вложений: 1
pidorg-from-air, а мне нужно это было для того, что бы вводить текст на русском и английском в t1 и t2 соответственно. И выводить в textarea с HTML кодом (т.е. с таблицей). Некий костыль для удобства :)

P.s. Для меня главное работает, все ровно этот JS будет использоваться только при добавлении материала. По этому ошибки не так уж и важны для меня.

А вот и пример:

рони 17.02.2015 09:20

Цитата:

Сообщение от pidorg-from-air
function start

Цитата:

Сообщение от рони
плохое имя для функции

:no:


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