Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.08.2012, 13:23
Новичок на форуме
Отправить личное сообщение для Atonix Посмотреть профиль Найти все сообщения от Atonix
 
Регистрация: 20.08.2012
Сообщений: 7

Помогите со скриптом
Есть такой скрипт :
<head>
<script language="JavaScript">
function getData() {
alert("Вы ввели: " + document.forms[0].textField.value);
}
</script>
</head>
<body>
<form>
<input type=text name=textField size=45>
<input type="button" value="Ответ" onClick="getData()">
</form>
</body>

Мне необходимо сделать так, что если в поле занести правильный ответ, то сразу произойдет переход на страницу(нужную мне). Если ответы будут не верные, то появится просто надпись - ответ не верный. Прошу помочь!
Ответить с цитированием
  #2 (permalink)  
Старый 20.08.2012, 14:19
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

<form>
	<input type=text name=textField size=45> 
	<input type="button" value="Ответ">
</form>

<script>
window.onload = function () {
	document.forms[0].children[1].onclick = function () {
		var text = document.forms[0].textField.value;
		if (text == 'ha') {
			location.href = 'http://javascript.ru';
		} else {
			alert('ответ неверный');
		}
	}
}
</script>
Ответить с цитированием
  #3 (permalink)  
Старый 20.08.2012, 14:26
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Верный Ответ: "Тут верный Ответ"

<script language="JavaScript">
 function getData(a) {
 var aOtwet=a.getAttribute("data");
 var b = document.forms[0].textField.value;
    if (aOtwet==b) {
        alert("Вы ввели: Верный ответ");
        document.forms[0].submit();
    }  else  alert("Вы ввели: Неверный ответ");
 }
 </script>
 </head>
 <body>
 <form action="Ccылка">
 <input type=text name=textField size=45> 
 <input type="button" data="Тут верный Ответ" value="Ответ" onClick="getData(this)">
 </form>
Ответить с цитированием
  #4 (permalink)  
Старый 20.08.2012, 14:43
Новичок на форуме
Отправить личное сообщение для Atonix Посмотреть профиль Найти все сообщения от Atonix
 
Регистрация: 20.08.2012
Сообщений: 7

Сообщение от Deff Посмотреть сообщение
Верный Ответ: "Тут верный Ответ"

<script language="JavaScript">
 function getData(a) {
 var aOtwet=a.getAttribute("data");
 var b = document.forms[0].textField.value;
    if (aOtwet==b) {
        alert("Вы ввели: Верный ответ");
        document.forms[0].submit();
    }  else  alert("Вы ввели: Неверный ответ");
 }
 </script>
 </head>
 <body>
 <form action="Ccылка">
 <input type=text name=textField size=45> 
 <input type="button" data="Тут верный Ответ" value="Ответ" onClick="getData(this)">
 </form>
Deff,
Все супер работает, еще вопрос. можно ли как нибудь защитить верный ответ, чтобы в искодном коде страницы не было написано правильного ответа?
Ответить с цитированием
  #5 (permalink)  
Старый 20.08.2012, 14:53
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от Atonix
можно ли как нибудь защитить верный о
К примеру, - заескейпить строку вставляемую в date="";
alert(escape('Тут верный Ответ').replace(/u/g,'\\u'))



Верный Ответ: "Тут верный Ответ"
<script language="JavaScript">
 function getData(a) {
 var aOtwet=unescape(a.getAttribute("data").split("\\u").join("u"))
 var b = document.forms[0].textField.value;
    if (aOtwet==b) {
        alert("Вы ввели: Верный ответ");
        document.forms[0].submit();
    }  else  alert("Вы ввели: Неверный ответ");
 }
 </script>
 </head>
 <body>
 <form action="Ccылка">
 <input type=text name=textField size=45> 
 <input type="button" data="%\u0422%\u0443%\u0442%20%\u0432%\u0435%\u0440%\u043D%\u044B%\u0439%20%\u041E%\u0442%\u0432%\u0435%\u0442" value="Ответ" onClick="getData(this)">
 </form>

Чуть подправил под escape

Последний раз редактировалось Deff, 20.08.2012 в 15:38.
Ответить с цитированием
  #6 (permalink)  
Старый 20.08.2012, 15:14
Новичок на форуме
Отправить личное сообщение для Atonix Посмотреть профиль Найти все сообщения от Atonix
 
Регистрация: 20.08.2012
Сообщений: 7

Сообщение от Deff Посмотреть сообщение
Ну заескейпить - к примеру
alert(escape('Тут верный Ответ').replace(/u/g,'\\u'))



Верный Ответ: "Тут верный Ответ"
<script language="JavaScript">
 function getData(a) {
 var aOtwet=unescape(a.getAttribute("data").replace(/\/\/u/g,'u'));
alert(a.getAttribute("data").replace(/\/\//g,''))
 var b = document.forms[0].textField.value;
    if (aOtwet==b) {
        alert("Вы ввели: Верный ответ");
        document.forms[0].submit();
    }  else  alert("Вы ввели: Неверный ответ");
 }
 </script>
 </head>
 <body>
 <form action="Ccылка">
 <input type=text name=textField size=45> 
 <input type="button" data="%\u0422%\u0443%\u0442%20%\u0432%\u0435%\u0440%\u043D%\u044B%\u0439%20%\u041E%\u0442%\u0432%\u0435%\u0442" value="Ответ" onClick="getData(this)">
 </form>


Тут Автотрансформирюца спец символы - но через серв - будет в норме

Можно через encodeURI
Deff,
Все равно в исходном коде он виден. А чтобы вообще не спалить слово,так не возможно сделать? А можно еще ссылку скрыть, чтобы тоже ее в исходном коде не было видно?

Последний раз редактировалось Atonix, 20.08.2012 в 15:18.
Ответить с цитированием
  #7 (permalink)  
Старый 20.08.2012, 15:27
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Atonix,
Я чуть сменил кодирование
Ответить с цитированием
  #8 (permalink)  
Старый 20.08.2012, 15:35
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,744

на сервер данные отправляйте, там и проверяйте (см ajax или отправка данных в фрейм), на клиенте - гарантий нет
Ответить с цитированием
  #9 (permalink)  
Старый 20.08.2012, 15:40
Новичок на форуме
Отправить личное сообщение для Atonix Посмотреть профиль Найти все сообщения от Atonix
 
Регистрация: 20.08.2012
Сообщений: 7

Сообщение от Deff Посмотреть сообщение
Atonix,
Я чуть сменил кодирование
Deff,
Супер ВООБЩЕ класс. А ссылку можно тоже спрятать?
Ответить с цитированием
  #10 (permalink)  
Старый 20.08.2012, 15:58
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

alert(escape('Тут верный Ответ').replace(/u/g,'\\u'))
alert(escape('Сcылка').replace(/u/g,'\\u'))


Верный Ответ: "Тут верный Ответ"

<script language="JavaScript">
 function getData(a) {
 var aOtwet=unescape(a.getAttribute("data").split("\\u").join("u"))
 alert(aOtwet)
 var z=document.forms[0];
 var b = z.textField.value;
    if (aOtwet==b) {
        alert("Вы ввели: Верный ответ");
        var xz=unescape(z.getAttribute("data").split("\\u").join("u"));
alert("Переходим на==> "+xz);
        z.setAttribute("action",xz);
        document.forms[0].submit();
    }  else  alert("Вы ввели: Неверный ответ");
 }
 </script>
 </head>
 <body>
 <form data="%\u0421c%\u044B%\u043B%\u043A%\u0430" action="псевдоCcылка" >
 <input type=text name=textField size=45> 
 <input type="button" data="%\u0422%\u0443%\u0442%20%\u0432%\u0435%\u0440%\u043D%\u044B%\u0439%20%\u041E%\u0442%\u0432%\u0435%\u0442" value="Ответ" onClick="getData(this)">
 </form>

Последний раз редактировалось Deff, 20.08.2012 в 16:02.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите со скриптом shkyra Общие вопросы Javascript 2 25.01.2011 22:38
Помогите разобраться со скриптом artnik jQuery 0 23.01.2011 18:53
Помогите с скриптом... cosonic Общие вопросы Javascript 6 03.07.2010 01:19
помогите с скриптом $12ANDRE12$ Firefox/Mozilla 2 12.05.2009 21:46
Помогите со скриптом Pilageen Общие вопросы Javascript 5 13.04.2009 14:13