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, время: 09:25. |