Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Создание формы с проверкой содержимого (https://javascript.ru/forum/misc/40170-sozdanie-formy-s-proverkojj-soderzhimogo.html)

asymon 26.07.2013 09:44

Создание формы с проверкой содержимого
 
Требуется сделать что то вроде теста. Пользователь вводит текст и жмет отправить. Если текст совпал с заранее заданным ответом то выводится одно сообщение (например верно и ссылка на следующую страничку), если ответ не совпал то другое сообщение (например не верно, попробуйте еще раз).
Знаю как сделать такое на php, но требуется именно Javascript (в коем я ни шарю) решение.

ОлегА 26.07.2013 10:19

var text = 'текст';

function test_text(){
    if(document.getElementById('text').value !== text){
         alert('не верно, попробуйте еще раз'); 
         return false;
    } else {  
         alert('Ура, верно!'); 
    }
}

<form>
   <input type="text" id="text">
   <input type="submit" value="Отправить" onclick="return test_text()">
</form>

Гробовщик 26.07.2013 11:28

у js код открыт, т.е. если пользователь посмотрит исходный код, сможет определить какой де ответ верный, копай в сторону ajax там храни ответы, или в базе хранить можешь

ОлегА 26.07.2013 11:45

Цитата:

Сообщение от Гробовщик
у js код открыт, т.е. если пользователь посмотрит исходный код, сможет определить какой де ответ верный

да и лучше так не делать

ОлегА 26.07.2013 11:46

ajax верный путь

asymon 26.07.2013 19:49

Спасибо за советы, осталось только сделать чтобы после отображения alert('Ура, верно!'); происходил редирект на другую страницу, пробовал вот так:
<script>
   var text = 'т';
 
function test_text(){
  if(document.getElementById('text').value !== text){
	         alert('не верно, попробуйте еще раз');
	         return false;
    } else { 
	         var delay = 1;
  setTimeout("document.location.href='http://site.ru'", delay);
alert('Ура, верно!');
			
			
	    }
	}
</script>

Не получилось(

asymon 26.07.2013 20:37

А нет, все заработало.


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