Я запускаю следующий код, когда пользователь нажимает кнопку, чтобы скопировать текст из серии абзацев в div в поле ввода текстовой области.Когда текстовая область пуста, код работает правильно и вставляет текст абзаца в поле.Если я нажму кнопку еще раз, она будет повторять эту функцию, добавляя текст абзаца к ранее вставленному тексту.
Однако, если я наберу что-нибудь вручную в текстовое поле и затем нажму на кнопку, это просто не будет работать.
function copyDiv() {
var x = document.getElementById('post-caption').getElementsByTagName('p');
var i;
var firstDivContent = x[0].innerHTML;
for (i = 1; i < x.length; i++) {
firstDivContent = firstDivContent + x[i].innerHTML;
}
var secondDivContent = document.getElementById('comment');
firstDivContent = firstDivContent + " " + secondDivContent.innerHTML;
secondDivContent.innerHTML = firstDivContent;
}
Соответствующий HTML выглядит следующим образом:
<div class="entry themeform" id="post-caption">
<p>Paragraph 1</p>
<p>Paragraph 2</p>
</div>
<input name="submit" type="submit" id="submit" class="submit" value="Send Feedback">
<textarea id="comment" name="comment" cols="45" rows="8" aria-required="true"> </textarea></p>
<input name="copy-text" id="copy-text" class="submit copy-text" value="Copy caption text" onClick="copyDiv();">
Любая помощь очень ценится.