Вставить textarea в input
Подскажите, не получается при клике на кнопку вставить данные из textarea в input
Делаю так:
<table>
<tr><td><textarea class="textar" type="text" value="">1</textarea></td></tr>
<tr><td><textarea class="textar" type="text" value="">2</textarea></td></tr>
<tr><td><textarea class="textar" type="text" value="">3</textarea></td></tr>
<tr><td><input type="button" class="textar1" value="GO"></td></tr>
</table>
<table>
<tr><td><input id="id1" type="text" value=""></td></tr>
<tr><td><input id="id2" type="text" value=""></td></tr>
<tr><td><input id="id3" type="text" value=""></td></tr>
</table>
<script>
$(".textar1").click(function() {
var id1=$( this ).prev(".textar").val();
var id2=$( this ).prev(".textar").prev(".textar").val();
var id3=$( this ).prev(".textar").prev(".textar").prev(".textar").val();
document.getElementById("id1").value=id1;
document.getElementById("id2").value=id2;
document.getElementById("id3").value=id3;
});
</script>
Помогите, что делаю не так? |
<table>
<tr><td><textarea class="textar" type="text" value="" id="n1">1</textarea></td></tr>
<tr><td><textarea class="textar" type="text" value="" id="n2">2</textarea></td></tr>
<tr><td><textarea class="textar" type="text" value="" id="n3">3</textarea></td></tr>
<tr><td><input type="button" class="textar1" value="GO" id="b1"></td></tr>
</table>
<table>
<tr><td><input id="id1" type="text" value=""></td></tr>
<tr><td><input id="id2" type="text" value=""></td></tr>
<tr><td><input id="id3" type="text" value=""></td></tr>
</table>
<script>
/*$(".textar1").click(function() {
var id1=$( this ).prev(".textar").val();
var id2=$( this ).prev(".textar").prev(".textar").val();
var id3=$( this ).prev(".textar").prev(".textar").prev(".textar").val();
document.getElementById("id1").value=id1;
document.getElementById("id2").value=id2;
document.getElementById("id3").value=id3;*/
b1.onclick = function(){
id1.value = n1.innerHTML;
id2.value = n2.innerHTML;
id3.value = n3.innerHTML;}
</script>
|
все надо реализовать на class в textarea.
|
Это задание что-ли такое? Так неудобно же ведь. С id-шниками куда проще. Ну берите тогда класс функцией document.getElementsByClassName("textar")[0] и вставляйте вместо 0 номер своего textarea.
|
В Вашем коде, кстати, не работает функция prev(). Она выдает какой-то бред. Она видимо нацеливается на элемент <tr>, <td> или еще какой-нибудь.
|
<table>
<tr><td><textarea class="textar" type="text" value="">1</textarea></td></tr>
<tr><td><textarea class="textar" type="text" value="">2</textarea></td></tr>
<tr><td><textarea class="textar" type="text" value="">3</textarea></td></tr>
<tr><td><input type="button" class="textar1" value="GO"></td></tr>
</table>
<table>
<tr><td><input id="id1" type="text" value=""></td></tr>
<tr><td><input id="id2" type="text" value=""></td></tr>
<tr><td><input id="id3" type="text" value=""></td></tr>
</table>
<script src="https://code.jquery.com/jquery-2.1.4.js"></script>
<script>
$(".textar1").click(function() {
$(this).closest('table').find('.textar').each(function() {
$('#id' + $(this).val()).val( $(this).val() );
});
});
</script>
|
| Часовой пояс GMT +3, время: 05:28. |