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

HTML+CSS+JavaScript

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

 

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

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

тема: button заполненность полей
 
 автор: Port_Artur3   (24.02.2015 в 14:52)   письмо автору
 
 

Есть рабочий скрипт проверки заполнености полей
<script language="JavaScript">
function check(e) {
 for(i=0; i<e.length; i++) {
   if(!e[i].value){
    alert ('Должны быть заполнены все поля формы!');
    return false;
   }
 }
 return true;
}
</script>


, который работает для формы с тегом "<input type="submit""
<form onSubmit = "return check(this.elements);">

<input type="submit" ....


Как сделать тоже самое для кнопки типа button, чтобы выводило сообщение о незаполненности полей:

<form>
<label>Имя:*</label><br><input type="text" name="Имя" placeholder="" required>
 <button type="button" ...


?

Помогите пожалуйста!

  Ответить  
 
 автор: elenaki   (24.02.2015 в 15:34)   письмо автору
 
   для: Port_Artur3   (24.02.2015 в 14:52)
 

<form> 
<label>Имя:*</label><br><input type="text" name="Имя" placeholder="" required> 
 <button type="button" onclick="return check(this.elements);" ...

  Ответить  
 
 автор: Port_Artur3   (24.02.2015 в 16:22)   письмо автору
 
   для: elenaki   (24.02.2015 в 15:34)
 

this.elements - это же для внутренних элементов, - не работает для Button.

  Ответить  
 
 автор: Mookapek   (24.02.2015 в 17:19)   письмо автору
 
   для: Port_Artur3   (24.02.2015 в 16:22)
 

<form id="forma"> 
<label>Имя:*</label><br><input type="text" name="Имя">
</form>
<button type="button" onclick="return check(document.getElementById('forma').elements);">Кнопка</button>

  Ответить  
 
 автор: confirm   (24.02.2015 в 18:50)   письмо автору
 
   для: Mookapek   (24.02.2015 в 17:19)
 

Return то зачем кнопке?

  Ответить  
 
 автор: Mookapek   (24.02.2015 в 20:08)   письмо автору
 
   для: confirm   (24.02.2015 в 18:50)
 

ну да, return не нужно

  Ответить  
 
 автор: Port_Artur3   (24.02.2015 в 19:45)   письмо автору
 
   для: Mookapek   (24.02.2015 в 17:19)
 

Mookapek , спасибо работает, но не совсем правильно.
 Он ругается даже если заполнены все поля формы
. А на другом сайте где использовался Submit, работало нормально. А когда на всплывающем сообщении Ok происходит выполнение формы (скрипт обработки Button писал не я).

А что изменить в скрипте:

<script language="JavaScript"> 
function check(e) { 
 for(i=0; i<e.length; i++) { 
   if(!e[i].value){ 
    alert ('Должны быть заполнены все поля формы!'); 
    return false; 
   } 
 } 
 return true; 

</script>


чтобы он проверял на заполненность только те поля, которые сделаны обязательными,т.е. содержат required:

<label>Имя:*</label><br><input type="text" name="Имя" placeholder="" required>


Было бы вообще супер!

  Ответить  
 
 автор: Mookapek   (24.02.2015 в 20:17)   письмо автору
 
   для: Port_Artur3   (24.02.2015 в 19:45)
 

<script>
function check(e) {
 for(i=0; i<e.length; i++) {
   if(!e[i].value && e[i].required){
    alert ('Должны быть заполнены все поля формы!');
    return false;
   }
 }
 return true;

</script>

<form id="forma"> 
<label>Имя:*</label><br><input type="text" name="firstname" required><br>
<label>Фамилия:</label><br><input type="text" name="surname">
</form>
<button type="button" onclick="check(document.getElementById('forma').elements);">Кнопка</button>

  Ответить  
 
 автор: Port_Artur3   (25.02.2015 в 09:13)   письмо автору
 
   для: Mookapek   (24.02.2015 в 20:17)
 

Большое спасибо!

  Ответить  
Rambler's Top100
вверх

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