Регистрация на сайте
Вот сделал код:
<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, время: 10:27. |