$ (this) .find ('input [type = "submit"]: нет (.cancel), button'). click (function () - что это? - PullRequest
6 голосов
/ 12 октября 2011

Может кто-нибудь помочь мне понять эту строку кода JQuery?:

$(this).find('input[type="submit"]:not(.cancel), button').click(function ()

Меня особенно интересует .cancel, поскольку весь кусок кода jquery (не включенный здесь) используется для проверки страницы, и я пытаюсь предотвратить проверку, если пользователь нажимает кнопку отмены. Я предполагаю, что приведенная выше строка кода говорит, что нажатие кнопки отправки НЕ является кнопкой отмены, затем продолжите.

Но я не знаю, как обозначить кнопку отменой.

Ответы [ 5 ]

12 голосов
/ 12 октября 2011

В основном он ищет элементы, расположенные в this, которые соответствуют следующим требованиям

  1. является входом
  2. имеет тип = отправить
  3. не имеет класса cancel

OR

  1. это кнопка
9 голосов
/ 13 октября 2011

Хорошие ответы здесь. Возможно, эта аннотированная версия добавляет ценность.

$(this)                   // within this jQuery object
  .find('                 // find all elements
    input[type="submit"]  // that are input tags of type "submit"
    :not(.cancel)         // and do not have the class "cancel"
    ,                     // or
    button                // are button elements
  ')
  .click(                 // and for each of these, to their click event
    function (){}         // bind this function
  );
2 голосов
/ 12 октября 2011

.cancel - селектор класса.В частности, он ищет элементы input с атрибутом type, установленным в submit, но не имеет класса cancelОн также ищет элементы с тэгом button.

. Вы можете «назначить кнопку как кнопку отмены» следующим образом:

<input type='submit' class='cancel' />
2 голосов
/ 12 октября 2011

Они применяют CSS-класс с именем cancel, чтобы в основном символизировать кнопку отмены (затем проверяет, что это кнопка без этого класса)

Хотя я не знал, что вы можете использовать звездочку (*) в имени класса CSS.

Не важно, это вы пытались выделить жирным шрифтом код внутри блока кода

Мне также любопытно, почемуони делают кнопку отмены типа submit, когда они хотят ее отменить в любом случае.(Похоже, <input type="button" ... /> будет лучше).

1 голос
/ 12 октября 2011

в основном это селектор, который говорит Дайте мне отправить кнопки без класса отмены и кнопок и применить обработчик кликов. попробуйте поискать следующие селекторы

бирка .учебный класс : Нет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...