Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   запретить submit (disabled) если... (https://javascript.ru/forum/events/46859-zapretit-submit-disabled-esli.html)

sarnjak 27.04.2014 01:07

запретить submit (disabled) если...
 
если значения полей input (суммарное! в одном классе) равно 0 или в них нет чисел.
Есть еще поля других классов - на них правило распространяться не должно... :help:
Собственно как пишется часть на джава?

$('[class=necessarily]').each(function()
if "сумма, значения и т.д." как эту часть написать? ночь на дворе голова не варит уже

Vlasenko Fedor 27.04.2014 02:14

<body>
  <input class="test" type="text" value="">
  <input class="test" type="text" value="">
  <input class="test1" type="text" value="1">
  <input class="test1" type="text" value="">
  <script>
    var validate = function (elements) {
        var els = document.querySelectorAll(elements);
        var len = els.length;
        while (len--) {
          if (els[len].value) return true;
        }
        return false;
      };
    alert(validate("input.test"));
    alert(validate("input.test1"));
  </script>
</body>

jQuery напишите уже сами :)

рони 27.04.2014 02:58

sarnjak,
:write:
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .necessarily{
    background: #DCDCDC
  }
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
$(function () {
       $(':submit').prop({
           'disabled': true
       })
       $('form').on('input', function () {
           var sum = 0;
           $('.necessarily').each(function () {
               sum += +this.value || 0
           })
           $(':submit').prop({
               'disabled': sum == 0
           })
       })
   })
  </script>
</head>

<body>
<form>
    <input type="submit" value="input" ><br>
    <button type="submit" > button </button> <br>
  <input class="test" type="text" value="">
  <input class="necessarily" type="number" value="">
  <input class="necessarily" type="number" value="">
  <input class="test1" type="text" value="">
  </form>
</body>

</html>

sarnjak 27.04.2014 16:15

спасибо! пошел ковыряться дальше :victory:


Часовой пояс GMT +3, время: 19:12.