Регистрация на сайте
Вот сделал код:
<html> <head> <title>Сайт тыры пыры там</title> <meta http-eqiv="content type" content="text/html; charset=windows-1251"> <script language="javascript"> var alpha = /^[()\-.\/@^_а-яА-ЯёЁ\w]+$/; function firstnameuser() { if (document.feedback.firstname.value.length < 2) { document.all.item("firstname_check").innerHTML = "Минимум 2 символа";} else { document.all.item("firstname_check").innerHTML = alpha.test(document.feedback.firstname.value) ? '+' : 'Некорректные символы'; } if (document.feedback.firstname.value.length > 15) { document.all.item("firstname_check").innerHTML = "Превышена длина";} } function emailuser() { if (document.feedback.email.value.length < 2) { document.all.item("email_check").innerHTML = "Минимум 2 символа";} else { document.all.item("email_check").innerHTML = alpha.test(document.feedback.email.value) ? '+' : 'Некорректные символы'; } if (document.feedback.email.value.length > 25) { document.all.item("email_check").innerHTML = "Превышена длина"; } } function female_male() { if (document.feedback.floor[0].checked) { document.all.item("female_male").innerHTML = "+"; } if (document.feedback.floor[1].checked) { document.all.item("female_male").innerHTML = "+"; } } function checkForm() { if (document.feedback.firstname_check.value != "+") { document.all.item("error_register").innerHTML = "Имя заполнено неверно"; } if (document.feedback.email_check.value != "+") { document.all.item("error_register").innerHTML = "E-mail заполнен неверно"; } if (document.feedback.female_male.value != "+") { document.all.item("error_register").innerHTML = "Пол не указан"; } if (document.all.item("error_register").innerHTML == " ") return true; if (document.all.item("error_register").innerHTML != " ") return false; } </script> </head> <img src="images/head.jpg" width=1900 height=200> <body bgcolor=white text="grey"> <table width=1960> <tr> <td valign=top> <h2>Меню</h2> <ul> <li><a href="index.html">Главная</a> <li><a href="games.html">Игры</a> <li><a href="films.html">фильмы</a> <li><a href="feedback.html">Обратная связь</a> </ul></td> <td> <h1>Обратная связь</h1> <span id="error_register"> </span> <table> <tr> <form action="request.php" method="post" name="feedback" onSubmit="return checkForm()"> <td><label>Имя:</label></td> <td><input type="text" name="firstname" onBlur="firstnameuser()"></td> <td width="200"><p id="firstname_check"></td> <tr> <td><label>E-mail</label></td> <td><input type="text" name="email" onBlur="emailuser()"></td> <td width="200"><p id="email_check"></td> </tr> <tr> <td><label>Пол:</label></td> <td><input type="radio" name="floor" value="male" onBlur="female_male()">Мужской <input type="radio" name="floor" value="female" onBlur="female_male()">Женский </td> <td width="200"><p id="female_male"></td> </tr> <tr> <td> <label>Выбирите тему:</label></td> <td><select name="subject"> <option value="review selected">Отзыв</option> <option value="suggestion">Предложение</option> <option value="problems">Жалоба</option> </td> </select> </tr> </table> <label>Сообщение:</label> <textarea name="message" cols="40" rows="10"></textarea> <br> <div style="border: 1px double black; padding: 3px; width: 165px;" id="symbols">Не более 450 символов!</div> <input type="checkbox" name="news">Присылать уведомления на почту <br> <input type="submit" value="Подтвердить"> </td> </form> <tr> </table> </body> </html> Я сделал чтобы рядом с полем ввода появлялось предупедение об ошбике или "+" если все правильно,оно появляется после сброса фокуса, можете проверить как работает. Но теперь я столкнулся с другой проблемой -хочу сделать что бы когда форма заполнена не верно то над формой была причина и она не отправляла запрос, вобщем я сделал это, но у меня не работает, помогите пожалуйста |
Apelcun77,
у вас очень крутая форма которой пофигу на таблицу в которой она находится и очень крутой селект в форме которому пофигу и на форму и на таблицу но особо впечатляет document.all :cray: :cray: :cray: |
рони, я новичок, лучше скажите что нужно исправить пожалуйста
|
Apelcun77,
вместо document.all -> http://learn.javascript.ru/searching-elements-dom не путать последовательность тегов а соблюдать вложенность - строки 094 и 095 для селекта -- html разметка: таблица в форме либо форма в одной из ячеек таблицы. |
function checkForm() { var reg_error = document.getElementById("error_register"); if (document.feedback.firstname_check.value != "+") { reg_error.innerHTML = "Имя заполнено неверно"; } if (document.feedback.email_check.value != "+") { reg_error.innerHTML = "E-mail заполнен неверно"; } if (document.feedback.female_male.value != "+") { reg_error.innerHTML = "Пол не указан"; } if (reg_error.innerHTML == "") return true; if (reg_error.innerHTML != "") return false; } Сделал вот так, все равно что-то не работает,не знаю что |
Цитата:
function checkForm() { var reg_error = document.getElementById("error_register"); if (document.getElementById("firstname_check").innerHTML != "+") { reg_error.innerHTML = "Имя заполнено неверно"; }; if (document.getElementById("email_check").innerHTML != "+") { reg_error.innerHTML = "E-mail заполнен неверно"; }; if (document.getElementById("female_male").innerHTML != "+") { reg_error.innerHTML = "Пол не указан"; }; if (reg_error.innerHTML == "") return true; if (reg_error.innerHTML != "") return false; } точно ли тут пусто у вас или пробел ??? <span id="error_register"> </span> |
РОни, там пусто <span id="error_register"></span>
function checkForm() { var reg_error = document.getElementById("error_register").innerHTML = ""; var firstneme_check = document.getElementById("firstname_check"); var email_check = document.getElementById("email_check"); var female_male = document.getElementById("female_male"); if (firstneme_check != "+") { reg_error.innerHTML = "Имя заполнено неверно"; } if (email_check != "+") { reg_error.innerHTML = "E-mail заполнен неверно"; } if (female_male != "+") { reg_error.innerHTML = "Пол не указан"; } if (reg_error == "") return true; if (reg_error != "") return false; } Вот сделал так, все равно не получается я уже не нзаю что делать, как я понял условия не хотят сравниваться,не знаю почему. :help: |
Цитата:
|
Я изменил, просто скопировал суда немного другое, вот так тоже не работает ничего
|
Apelcun77,
я вам дал рабочий код и он работает!!!-- сделайте рабочими вашу форму и остальные скрипты . |
рони, я взял вашу форму, все работает, но она не хочет возращать return true, и даже если все правильно заполнено то не отправляется запрос, что делать?
|
Цитата:
Цитата:
|
Apelcun77,
:cray: :cray: :cray: изучите основы ... <!DOCTYPE html> <html> <head> <title>Сайт тыры пыры там</title> <meta charset="utf-8"> <style type="text/css"> #error_register{ color: #FF0000; } </style> <script language="javascript"> var alpha = /^[()\-.\/@^_а-яА-ЯёЁ\w]+$/; function firstnameuser(firstname) { var firstname_check = document.getElementById("firstname_check"); if (firstname.value.length < 2) { firstname_check.innerHTML = "Минимум 2 символа";} else if(firstname.value.length > 15){ firstname_check.innerHTML = "Превышена длина";} else { firstname_check.innerHTML = alpha.test(firstname.value) ? '+' : 'Некорректные символы'; } } function emailuser(email) { var email_check = document.getElementById("email_check"); if (email.value.length < 2) { email_check.innerHTML = "Минимум 2 символа";} else if (email.value.length > 25) { email_check.innerHTML = "Превышена длина"; } else{ email_check.innerHTML = alpha.test(email.value) ? '+' : 'Некорректные символы'; } } function female_male() { document.getElementById("female_male").innerHTML = "+"; } function checkForm() { var reg_error = document.getElementById("error_register"); reg_error.innerHTML = ""; if (document.getElementById("firstname_check").innerHTML != "+") { reg_error.innerHTML = "Имя заполнено неверно"; }; if (document.getElementById("email_check").innerHTML != "+") { reg_error.innerHTML = "E-mail заполнен неверно"; }; if (document.getElementById("female_male").innerHTML != "+") { reg_error.innerHTML = "Пол не указан"; }; if (reg_error.innerHTML == "") return true; if (reg_error.innerHTML != "") return false; } </script> </head> <body> <img src="images/head.jpg" width="1900" height="200"> <table width="1960"> <tr> <td valign="top"> <h2>Меню</h2> <ul> <li> <a href="index.html">Главная</a> </li> <li> <a href="games.html">Игры</a> </li> <li> <a href="films.html">фильмы</a> </li> <li> <a href="feedback.html">Обратная связь</a> </li> </ul> </td> <td> <h1>Обратная связь</h1><span id="error_register"></span> <form action="request.php" method="post" name="feedback" onsubmit="return checkForm()" id="feedback"> <label>Сообщение:</label> <textarea name="message" cols="40" rows="10"> </textarea><br> <div style="border: 1px double black; padding: 3px; width: 165px;" id="symbols"> Не более 450 символов! </div><input type="checkbox" name="news">Присылать уведомления на почту<br> <input type="submit" value="Подтвердить"> <table> <tr> <td><label>Имя:</label></td> <td><input type="text" name="firstname" onblur="firstnameuser(this)"></td> <td width="200"> <p id="firstname_check"></p> </td> </tr> <tr> <td><label>E-mail</label></td> <td><input type="text" name="email" onblur="emailuser(this)"></td> <td width="200"> <p id="email_check"></p> </td> </tr> <tr> <td><label>Пол:</label></td> <td><input type="radio" name="floor" value="male" onclick = "female_male()">Мужской <input type="radio" name="floor" value="female" onclick="female_male()">Женский</td> <td width="200"> <p id="female_male"></p> </td> </tr> <tr> <td><label>Выбирите тему:</label></td> <td><select name="subject"> <option value="review selected"> Отзыв </option> <option value="suggestion"> Предложение </option> <option value="problems"> Жалоба </option> </select></td> </tr> </table> </form> </td> </tr> </table> </body> </html> |
Часовой пояс GMT +3, время: 16:37. |