Все кроме под ID login_name

SPoX

Местный житель
Регистрация
19 Апр 2014
Сообщения
186
Реакции
24
Привет всем
И так у меня на сайте стоит яваскрипт
короче этот яваскрипт работает везде где находит input type="text" или "textarea"
как заставить скрипт продолжать работать везде но только не в input где ID у инпута login_name

ну например так
Код:
<input placeholder="{login-method}" type="text" name="login_name" id="login_name" class="wide">

вот сам код

Код:
  // first come up with affected set of input elements
   this.each(function() {
     var $this = $(this);

     if ($this.is(':text, textarea')) {
       inputs = inputs.add($this);
     } else if ($this.is('form')) {
       inputs = inputs.add($this.find(':text, textarea'));
     } else if ($this.is(':checkbox')) {
       if (!inputs.length) {
         inputs = $(':text, textarea');
       }
       switchers = switchers.add($this); // store the checkboxes for further manipulation
     }

     if (typeof settings.exclude === 'string') {
       inputs = inputs.not(settings.exclude);
     }
   });

за ранее спасибо
 

Q_BASIC

Хранитель порядка
Регистрация
30 Ноя 2013
Сообщения
514
Реакции
1.186
Можно в js условие добавить

Код:
this.each(function() {
   var $this = $(this);

   if ($this.attr('id') === 'login_name') return;
   ...
 

borodatych

Гуру форума
Регистрация
24 Июн 2016
Сообщения
159
Реакции
98
Да, @Q_BASIC, ваше короче
Но лучше, научим хорошему
ТС, придумайте класс для исключаемых, прописывайте его в те поля и вот так код модифицируйте
Код:
this.each(function() {
   var $this = $(this);

   if ($this.hasClass('exclude-input-rule')) return;
   ...

И, по моему, мы увлеклись, обратите внимание на
Код:
     if (typeof settings.exclude === 'string') {
       inputs = inputs.not(settings.exclude);
     }

Где формируется переменная settings?
Пропишите там settings.exclude = "#login_name"
Через запятую добавляйте необходимые классы и айдишки
И будет щасте!)
 

SPoX

Местный житель
Регистрация
19 Апр 2014
Сообщения
186
Реакции
24
Я вот последный вариянт попробовал но что то не работает

вот так формируется переменная settings

Код:
    settings = (typeof options === 'object' ? $.extend({}, defaults, options) : defaults);
 
Последнее редактирование:

mspuz

Писатель
Регистрация
26 Окт 2017
Сообщения
8
Реакции
2
Нууу, получается, что после этой строки необходимо проделать, то, что посоветовали выше - "Пропишите там settings.exclude = "#login_name""
 

borodatych

Гуру форума
Регистрация
24 Июн 2016
Сообщения
159
Реакции
98
Я вот последный вариянт попробовал но что то не работает

вот так формируется переменная settings

Код:
    settings = (typeof options === 'object' ? $.extend({}, defaults, options) : defaults);
Сори, протерял сообзение
Дальше ищите откуда появляется options и там делайте так options.exclude = "#login_name"
Скорее всего options прилетает из вне, идите туда...
Я не знаю как вам еще помочь, оно все на виду
Если у коллег найдутся подходящие слова, подскажите
У меня ноль идей что дальше объяснять
 
Сверху