Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Проверка на заполнение форм!
 
 автор: Vados   (01.09.2006 в 14:16)   письмо автору
 
 

Всем привет!
Поскажите, как имея такую форму:

<form name="" action="" method="post">
 
<tr><td><p class=zag2>Модель HDD1:</td><td><input size=15 class=input type=text name=hdd[] value=''></td><td><p class=zag2>Размер HDD1:</td><td>
<input size=4 class=input type=text name=hdd[] value=''></td><td><p class=zag2>Дата установки:</td><td>
<input size=2 maxlength=2 class=input type=text name=hdd[] value=''>&nbsp;<input size=2 maxlength=2 class=input type=text name=hdd[] value=''>&nbsp;<input size=4 maxlength=4 class=input type=text name=hdd[] value=''>&nbsp;&nbsp;<input type="button" name="drop" value=" &minus; " onblur="" onclick="dropFile(this);"><input type="button" value=" + " onclick="addFile(this);"></td></tr>    
<input type="submit" value="Send">
</form>


B вот сам скрипт:

function dropFile(btn){
    if(document.getElementById) {
        tr = btn;
        while (tr.tagName != 'TR') tr = tr.parentNode;
        tr.parentNode.removeChild(tr);
        checkForLast();
    }
}
function addFile(btn){
    if(document.getElementById) {
        tr = btn;
        while (tr.tagName != 'TR') tr = tr.parentNode;
        var idSuffix = Math.round(Math.random()*1000);
        var newTr = tr.parentNode.insertBefore(tr.cloneNode(true),tr.nextSibling);
        thisChilds = newTr.getElementsByTagName('td');
        for (var i = 0; i < thisChilds.length; i++){
            if (thisChilds[i].className == 'header') thisChilds[i].innerHTML = '';
            if (thisChilds[i].className == 'files') thisChilds[i].innerHTML = '<input size="32" name="att" class="wideFile" type="file">';
        }
        checkForLast();
    }
}
function checkForLast(){
    btns = document.getElementsByName('drop');
    for (i = 0; i < btns.length; i++){
        btns[i].disabled = (btns.length == 1) ? true : false;
    }
}

Как сделать так, чтобы проверялись на заполнение все поля в форме, корме этого учитывая, что в первых два поля может вноситься и числа и слова, а в остальных три поля вносились только цифры.
Поскольку форма, позволяет добавлять аналогичную форму при нажатии на "+", необходимо сделать так, чтобы если пользователь не ввёл данные в форму, то к примеру знак "+" либо не активный, либо при нажатии на него, выводится сообщение: "Вы не заполнили поля!".

Заранее спасибо!

   
 
 автор: Vados   (01.09.2006 в 20:18)   письмо автору
 
   для: Vados   (01.09.2006 в 14:16)
 

Прошу, помогите!

   
 
 автор: RMW   (01.09.2006 в 22:11)   письмо автору
 
   для: Vados   (01.09.2006 в 20:18)
 

Как сделать так, чтобы проверялись на заполнение все поля в форме, корме этого учитывая, что в первых два поля может вноситься и числа и слова, а в остальных три поля вносились только цифры.
Поскольку форма, позволяет добавлять аналогичную форму при нажатии на "+", необходимо сделать так, чтобы если пользователь не ввёл данные в форму, то к примеру знак "+" либо не активный, либо при нажатии на него, выводится сообщение: "Вы не заполнили поля!".

Это можно сделать руками.
Для этого понадобиться написать энное количество строк кода.
Устроит такой ответ?

Во-первых твой скрипт невозможно даже запустить, чтобы посмотреть,
что к чему, там многое завязано на таблицу, и имеет значение взаимное расположение
формы и элементов таблицы, у тебя этого нет. А разбирать весь скрипт
и телепатически угадывать замысел автора никому не захочется.

   
 
 автор: RMW   (01.09.2006 в 23:20)   письмо автору
 
   для: RMW   (01.09.2006 в 22:11)
 

Ну вот пример,
Нужно добавить <table></table>
там где надо и добавить такую функцию

function fff()
{
  var inputs = document.forms[0].elements['hdd[]'];
  var i = inputs.length-1;
  var j = 5;
  var err;

  while(j--)
  {
    if(!inputs[i].value)err=1;
    if(j>2 && /\D/.test(inputs[i].value))err=2;
    i--;
  }

  if(err)
  {
    alert('error type:'+err);
    return false;
  }
  else return true;
}

Вызов функции осуществляется из
addFile(), в ней поставить первой строчкой

if(!fff())return;

   
 
 автор: DEM   (01.09.2006 в 21:53)   письмо автору
 
   для: Vados   (01.09.2006 в 14:16)
 

вой сркипт не смотрел, вот как я делал при регистрации пользователей:

<script>
function sub(){
n=document.reg;
if(n.login.value==""){alert('Вы не ввели Ваш логин!!!');}
else if(n.pass1.value==""){alert('Вы не ввели Ваш пароль');}
else if(n.pass2.value==""){alert('Вы не подтвердили пароль!!!');}
else if(n.pass1.value!=n.pass2.value){alert('Пароли в полях не совпадают!!!');}
else if(n.mail.value==""){alert('Вы не ввели Ваш e-mail!!!');}
else{
n.submit();
}
}
</script>



Блин, забыл написать что поом в буттоне пишешь onclick=sub();

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования