Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 23.05.2018, 15:31
Кандидат Javascript-наук
Отправить личное сообщение для Зосимов Посмотреть профиль Найти все сообщения от Зосимов
 
Регистрация: 11.02.2013
Сообщений: 102

Сообщение от laimas Посмотреть сообщение


Как именно? То что рони написал не годится?

У вас условие означает: если не пусто, то, если соответствует условию ..., иначе .... При этом не видно реакции на пустое значение.

А может быть и так: если пусто или не соответствует условию, то...., иначе.... При этом может требоваться отдельно сообщать о пустом значении и несоответствии. То есть можно переписать так: если пусто ..., иначе, если не соответствует, то...., иначе ....

Так чего надо то?
мне нужно - если значения ВСЕХ инпут не пусто, и значения ВСЕХ соответствуют условию, то - console.log(значения полей)
если хоть один input не соответствует условиям то - alert("error")
Ответить с цитированием
  #22 (permalink)  
Старый 23.05.2018, 15:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от Зосимов
мне нужно - если значения ВСЕХ инпут не пусто, и значения ВСЕХ соответствуют условию, то - console.log(значения полей)
var inputs=document.querySelectorAll('.bel');
var res = [];
var validity = [].every.call(inputs, function(node) {
   var str = node.value.trim();
   res.push(str);
   return  str && /^(C|M|X)/.test(str)
});

if(validity)  console.log(res);
else console.log("err");
Ответить с цитированием
  #23 (permalink)  
Старый 23.05.2018, 15:43
Кандидат Javascript-наук
Отправить личное сообщение для Зосимов Посмотреть профиль Найти все сообщения от Зосимов
 
Регистрация: 11.02.2013
Сообщений: 102

Сообщение от рони Посмотреть сообщение
var inputs=document.querySelectorAll('.bel');
var res = [];
var validity = [].every.call(inputs, function(node) {
   var str = node.value.trim();
   res.push(str);
   return  str && /^(C|M|X)/.test(str)
});

if(validity)  console.log(res);
else console.log("err");
всегда err

может из за пустых полей?
Ответить с цитированием
  #24 (permalink)  
Старый 23.05.2018, 15:47
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от Зосимов
может из за пустых полей?
Сообщение от рони
если значения ВСЕХ инпут не пусто,
Ответить с цитированием
  #25 (permalink)  
Старый 23.05.2018, 15:52
Кандидат Javascript-наук
Отправить личное сообщение для Зосимов Посмотреть профиль Найти все сообщения от Зосимов
 
Регистрация: 11.02.2013
Сообщений: 102

Сообщение от рони Посмотреть сообщение
это первая проверка на пустое значение
Ответить с цитированием
  #26 (permalink)  
Старый 23.05.2018, 15:58
Кандидат Javascript-наук
Отправить личное сообщение для Зосимов Посмотреть профиль Найти все сообщения от Зосимов
 
Регистрация: 11.02.2013
Сообщений: 102

рони,
если значения ВСЕХ инпут не пусто, и значения ВСЕХ соответствуют условию
Ответить с цитированием
  #27 (permalink)  
Старый 23.05.2018, 16:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,068

Сообщение от Зосимов
это первая проверка на пустое значение
и что?
пример ниже ввести во все поля M
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
    var inputs = document.querySelectorAll(".bel"), out = $("#out") ;
    $(inputs).on("input", function() {
        var res = [];
        var validity = [].every.call(inputs, function(node) {
            var str = node.value.trim();
            res.push(str);
            return str && /^(C|M|X)/.test(str)
        });
        out.text(validity ? res : "err")
    })
});
  </script>
</head>

<body>
<input name="" class="bel" value="">
<input name="" class="bel" value="">
<input name="" class="bel" value="">

<div id="out"></div>
</body>
</html>


далее сами.
Ответить с цитированием
  #28 (permalink)  
Старый 23.05.2018, 16:06
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

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

Или не так, Зосимов?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамическое копирование значения из input в input с одинаковыми атрибутами name ami_moor jQuery 2 10.08.2016 17:02
Как проверить что input не пуст и в случае true добавить класс Zhyhana jQuery 3 17.11.2015 21:15
При добавлении DOCTYPE "плывут" размеры input type=text Demath (X)HTML/CSS 4 08.07.2012 19:27
Opera не выполняет style.fontSize=... в поле input Маэстро Opera, Safari и др. 6 20.06.2011 12:03
Разным элементам input - разное форматирование. Как? eclipse (X)HTML/CSS 1 25.10.2007 13:55