С Новым годом! Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 26.01.2014
Сообщений: 3

Проверка формы на Javascript

26.01.2014, 01:33. Показов 1392. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здраствуйте. Может кто нибуть помочь мне разобратся в этом вопросе. Я сделал проверку формы на Javascript. Всё работает нормално кроме радио кнопок. В чем может быть проблема? Заранее спасибо.
Вот сам код:

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<html>
<head>
<title></title>
<script>
function checkForm(form) {
  
    var el, 
        elName, 
        value, 
        type; 
  
    var errorList = [];
 
    var errorText = {
        1 : "Вы не ввели имя'",
        2 : "Вы не ввели фамилию'",
        3 : "Вы не ввели адрес електронной почты'",
        4 : "Вы не выбрали подписку",
        5 : "Вы не выбрали течническую поддержку",
        6 : "Поле осталось не заполненным",
    }
 
    for (var i = 0; i < form.elements.length; i++) {
        el = form.elements[i];
        elName = el.nodeName.toLowerCase();
        value = el.value;
        if (elName == "input") { 
 
            type = el.type.toLowerCase();
    
            switch (type) {
                case "text" :
                    if (el.name == "name" && value == "") errorList.push(1);
                    if (el.name == "lastname" && value == "") errorList.push(2);
                    if (el.name == "email" && value == "") errorList.push(3);
                    break;
                    
                    case "legend" :
                    if (value == "") errorList.push(4);
                    
                    
                    
            
           
                
            }
        } else if (elName == "textarea") { 
            if (value == "") errorList.push(6);
        } else if (elName == "select") {
            if (value == 0) errorList.push(5);
        } 
    }
    
 
    if (!errorList.length) return true;
 
    var errorMsg = "Ошибка:\n\n";
    for (i = 0; i < errorList.length; i++) {
        errorMsg += errorText[errorList[i]] + "\n";
    }
    alert(errorMsg);
    return false;
}
</script>
</head>
<body>
<form onsubmit="return checkForm(this);">
    <input type="hidden" />
    <fieldset>
        Имя: <input type="text" name="name" /><br/>
        Фамилия: <input type="text" name="lastname" /><br/>
        E-mail: <input type="text" name="email" /><br/>
    </fieldset>
    <fieldset>
        <legend>Подписка:</legend>
        
        <input type="radio" name="myradio" value="yes"/> Ja<br/>
        <input type="radio" name="myradio" value="no"/> Nej<br/>
        
    </fieldset>
    <fieldset>
        <legend>Техническая поддержка</legend>
        <select>
            <option value="0" selected="1">Техническая поддержка</option>
            <option value="1">счет-фактура</option>
            <option value="2">Поддержка</option>
        </select><br/>
    </fieldset>
    <fieldset>
        <legend>Сообщение:</legend>
        <textarea></textarea><br/>
    </fieldset>
 
    <input type="submit" value="Отправить" />
</form>
</body>
</html>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.01.2014, 01:33
Ответы с готовыми решениями:

Проверка формы, checkbox; javascript
Препод дал задание на javascript написать универсальную ф-цию проверки заполненя формы через ф-цию с передачей параметров. Для n...

javascript проверка формы перед отправкой
как проверить все формы заполнены перед нажатием кнопки отправить &lt;!doctype html&gt; &lt;head&gt; &lt;meta...

Проверка на пустоту поля Javascript
Как проверить поле с датой на пустоту? Помогите, пожалуйста (Вместо elem.length == 0) HTML: Дата рождения&lt;/p&gt; ...

3
12 / 12 / 2
Регистрация: 22.01.2014
Сообщений: 71
26.01.2014, 11:22
Привет, если я сделаю через библиотеку jQuery и решу вопрос с радио кнопками то тебе это устроит или ты хочешь именно, что бы было чисто JS.
0
0 / 0 / 0
Регистрация: 26.01.2014
Сообщений: 3
26.01.2014, 13:03  [ТС]
Я бы хотел что бы это был чисто Javascript
0
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
26.01.2014, 18:23
как-то всё сложно у вас
во-первых, запомните на всю оставшуюся жизнь - при сабмите формы на сервер отправляются значения только поименованных элементов формы

соответственно, во-вторых, зачем проверять ваши теги <select> и <textarea>?
у них ведь нет атрибута NAME, и их значения на сервер просто не уйдут, проверяй-не проверяй
да ещё какой-то непоименованный скрытый инпут в начале формы у вас есть... для чего он? для красоты?

и, в-третьих, зачем вам такие сложности с коллекцией элементов формы, да ещё и с типами?
"будьте проще, сядьте на пол"
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
<!doctype html>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=windows-1251">
<title></title>
<script>
function checkForm (frm)
{
var errorList = [];
if (!frm.name.value)          errorList.push ('Âû íå ââåëè èìÿ');
if (!frm.lastname.value)      errorList.push ('Âû íå ââåëè ôàìèëèþ');
if (!frm.email.value)         errorList.push ('Âû íå ââåëè àäðåñ ýëåêòðîííîé ïî÷òû');
if (!frm.myradio [0].checked
 && !frm.myradio [1].checked) errorList.push ('Âû íå âûáðàëè ïîäïèñêó');
if (!frm.tech.value)          errorList.push ('Âû íå âûáðàëè òåõíè÷åñêóþ ïîääåðæêó');
if (!frm.mess.value)          errorList.push ('Ïîëå ñîîáùåíèÿ îñòàëîñü íåçàïîëíåííûì');
 
if (errorList.length) {alert (errorList.join ('!\n') + '!'); return false}
return true;
}
</script>
</head>
<body>
<form onsubmit="return checkForm (this)">
    <fieldset>
        Èìÿ: <input name="name" /><p>
        Ôàìèëèÿ: <input name="lastname" /><p>
        E-mail: <input name="email" />
    </fieldset>
 
    <fieldset><legend>Ïîäïèñêà:</legend>
        <input type="radio" name="myradio" value="yes"/> Ja<p><!-- странно, всё на русском, а тут непонятно по-каковски -->
        <input type="radio" name="myradio" value="no"/> Nej
    </fieldset>
 
    <fieldset><legend>Òåõíè÷åñêàÿ ïîääåðæêà</legend>
        <select name="tech">
            <option value="0" selected>Выберите способ техподдержки</option>
            <option value="1">ñ÷åò-ôàêòóðà</option>
            <option value="2">по телефону</option>
        </select>
    </fieldset>
 
    <fieldset><legend>Ñîîáùåíèå:</legend>
        <textarea name="mess"></textarea>
    </fieldset>
 
    <input type="submit" value="Îòïðàâèòü" />
</form>
</body>
</html>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.01.2014, 18:23
Помогаю со студенческими работами здесь

Javascript проверка на символы в адресе
Я использую код, var str=location.search.substring(1); который получает в переменную переданные данные после вопросика. А далее, эта...

Проверка на пустую строку в JavaScript
Подскажите пожалуйста, есть ли в javascripte какой то быстрий и легкий способ проверить, пустая ли строке. Имеется ввиду что-то типа...

Проверка даты с помощью JavaScript
Nado pri pomoshi Java Script proverit datu (chotbi ne bilo 31 Fevrala i t.p.). Yest li uzhe vstroyennaya funktsiaya ili nado pisat vse...

Вопрос по JavaScript (проверка на заполнение полей)
Здравствуйте. Сразу прошу прощения за, скорее всего, глупый вопрос, но в ЯваСкрипте все что знаю это как вставить код счетчика на сайт :)....

Проверка условия и смена картинки в JavaScript
На странице имеется картинка &lt;img scr='1.png'&gt; к нему имеется событие onclick в нём нужно написать такой скрипт: при нажатии проверяется...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru