JS считать последнию введеную textarea строку
Добрый день, помогите решить задачу, нужно сделать подобие соц опросника на сайте, сайт спрашивает, а юзер отвечает(нужно именно строковый вариант,никаких кнопок, других полей и тп) и еще должны проверить на правильность ответ, т.к я только сегодня начал работать с js и тп, то кучу сразу вопросов. Начал я делать с помощью textarea, вывожу текст, но вот как считать именно последний ? тобишь, можно вродь как считать так текст :
var tex=document.getElementById('tt').value; но оно возьмет все. Вот, что я накодил : <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Стили</title> </head> <body> <div class="fixed-textarea"> <textarea name ="tt" id="tt" style="height: 100%;width: 100%;" > </textarea></div> <script language="JavaScript"> var text = '>> Сколько лет земле ? \r\n >> ' var i=0; function type(){ i++; if( i <= text.length ) document.getElementById("tt").innerHTML = text.substr(0, i); setTimeout( type, 50 ); } function one(){ var k= Math.random(); var tex=document.getElementById('tt').value; setTimeout( type, 10 ); } type(); </script> </body> </html> |
Плюс минус как-то так
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Стили</title> </head> <body> <div class="fixed-textarea"> <textarea name ="tt" id="tt" style="height: 100%;width: 100%;" > </textarea></div> <div id="result"></div> <script language="JavaScript"> var text = '>> Сколько лет земле ? \r\n >> ', i=0, textInput = document.getElementById("tt"), result = document.getElementById("result"); function type(){ i++; if( i <= text.length ) document.getElementById("tt").innerHTML = text.substr(0, i); setTimeout( type, 50 ); } function one(){ var k= Math.random(); var tex=document.getElementById('tt').value; setTimeout( type, 10 ); } type(); textInput.addEventListener('keyup', function(e){ var answer = e.target.value.split('>>') result.innerHTML = answer[answer.length-1] }) </script> </body> </html> |
спасибо большое. Кстати, не подскажите, почему, когда я делаю вот так :
<script language="JavaScript"> var text = '>> Сколько лет земле ? \r\n >> ' var i=0; function type(tx){ i++; if( i <= tx.length ) document.getElementById("tt").innerHTML = tx.substr(0, i); setTimeout( type, 50 ); } type(text); </script> оно не верно отображает ? тобишь, я хочу посылать в функию сам текст, который он должен выводить |
Царь Леонид,
А зачем функция one? |
эт я тестил, он просто не удалил)
|
Цитата:
|
всм ? ну, текст для вывода у меня будет не один (после прочтения строки и тп вывести еще одну) и не логично было бы для каждого текста функцию создавать (как у меня щас работает).
|
lolidze,
<script language="JavaScript"> var text = '>> Сколько лет земле ? \r\n >> '; var i=0; function type(tx){ i++; if( i <= tx.length ) document.getElementById("tt").innerHTML = tx.substr(0, i); setTimeout(function() { type(tx); }, 50); } type(text); </script> |
спасибо большое
|
Цитата:
а моежете подсказать, как считать только окончательный ответ ? тобишь, когда уже дописал и нажал ентер (к примеру). просто мне приходится сравнивать результат набранный с клавиатуры, а так как он по символьно, то не оч хорошо получается. Можете подсказать ? |
Часовой пояс GMT +3, время: 18:51. |