Вход

Просмотр полной версии : Поочередная активация текстовых полей


Meecrobe
04.11.2011, 00:11
здравствуйте!

есть форма с 2 текстовыми полями и 1 textarea (имя, email, сообщение). При заполнении всех полей отправляется письмо на указанный email. Дабы не выводить каждый раз сообщения вроде "Введите Ваше имя" или "Введите текст сообщения", решил просто-напросто сделать все поля, включая кнопку submit неактивными, кроме первого поля (имя). И по мере того, как пользователь будет вводить данные, следующие за текущим поля будут становиться активными. Когда все поля будут заполнены, то в последнюю очередь активируется кнопка submit, что сделает возможным отправку сообщения. Пробовал и так, и сяк. Пришлось зарегистрироваться. Помогите, пожалуйста:help: :help: :help:

<form action="index.php" method="POST" name="feedbackform">
<font color="white">
<font size="5">Cвязаться с нами</font><br>
Имя: <input id="username" type="text" name="username" size="17"><br>
E-mail: <input disabled id="email" type="text" name="email" size="17">
<br><br>
Сообщение:<br>
<textarea disabled id="message" maxlength="170" name="message" rows="5"></textarea>
<br>
<input disabled id="send" type="submit" name="send" value="" class="sendbtn">
</font>
</form>

melky
04.11.2011, 00:38
если стирать - то они не будут деактивироваться. но об этом ничего не было сказано.

document.feedb.ackform.onkeydown = function(e){
var els = this.elements;
var el = /*@cc_on!@*/0?event.srcElement:e.target;
var pos = 0;

if(el.value){

while(els[pos])
if(els[pos]==el)
break;
else
pos++;

el = els[pos+1];

if(el.disabled){
el.disabled = false;
}
}
};

Meecrobe
04.11.2011, 00:53
Извините, если недоступно объяснил, но мне нужно именно,чтобы при стирании они вновь деактивировались. Т.е. если содержимое поля == '', то следующее за ним поле становится неактивным и наоборот.

melky
04.11.2011, 00:54
вам в раздел "работа". там напишут скрипт за денежное вознаграждение.

Meecrobe
04.11.2011, 01:11
я пытался написать сам, но не могу понять, почему не активирует/деактивирует поле в зависимости от значения.

что-то вроде


function send() {

if (document.getElementById('username').value != "")
}
document.getElementById('email').removeAttribute(' disabled');
}
else
{
document.getElementById('email').setAttribute('dis abled');
}
}

melky
04.11.2011, 07:24
function send() {

*!*
if (document.getElementById('username').value != "")
*!*}*/!*
*/!*
document.getElementById('email').removeAttribute(' disabled');
}
else
{
document.getElementById('email').setAttribute('dis abled');
}
}