Ответ 1
Что у вас уже есть, кажется, отлично работает для меня?
Я предлагаю взглянуть на ваш код и посмотреть, есть ли какая-то основная проблема, препятствующая работе селектора jQuery.
Итак, у меня есть большая форма, и мне нужно выбрать все элементы с определенным идентификатором в их значении id.
$("[id*=some-value]")
Это прекрасно работает! Теперь мне нужно отфильтровать из этих результатов любые элементы с другим идентификатором ключа в своих значениях id
$("[id*=some-value]:not([id*=some-other-value])")
который, очевидно, не работает для меня.
В настоящее время единственным фильтром, который я фильтрую, является флажок, поэтому я могу просто использовать
$("[id*=add-contact-form]:not(:checkbox)")
однако мне все равно хотелось бы знать, как объединить два метода селектора.
Что у вас уже есть, кажется, отлично работает для меня?
Я предлагаю взглянуть на ваш код и посмотреть, есть ли какая-то основная проблема, препятствующая работе селектора jQuery.
Прежде всего, если ваш id содержит "some-value" буквально, тогда он автоматически исключает "some-other-value".
Чтобы иметь возможность подбирать другие элементы, id
должен совпадать с точкой: "some-other-value" → " some-value -other" ( см., как совпадают первые 2 части)
Вы можете попробовать следующее:
$("[id*=add-contact-form]").not(":checkbox");
или
$("[id*=some-value]").not("[id*=some-value-other]");
Это работает для меня. Простой, меньший код и привлекательный.
$('*[id=some_id] option[value!=]')
Он выберет все параметры, у которых атрибут value установлен на что-то и проигнорирует с пустыми.