Есть отличные ответы на тот же вопрос в https://softwareengineering.stackexchange.com/questions/127178/two-html-elements-with-same-id-attribute-how-bad-is-it .
Один лакомый кусочек, не упомянутый выше , состоит в том, что если существует несколько одинаковых id
s одной и той же страницы (что происходит, хотя это и нарушает standard):
Если вам нужно обойти это (это печально), вы можете использовать
blockquote>$("*#foo")
, который убедит jQuery использоватьgetElementsByTagName
и вернуть список всех согласованных элементов.