Выберите конкретный тег html из коллекции с тем же именем и id [duplicate]

Используйте map или join :

df1['warehouse'] = df1['store'].map(df2.set_index('store_code')['warehouse'])
print (df1)
   id  store address warehouse
0   1    100     xyz      Land
1   2    200     qwe       Sea
2   3    300     asd      Land
3   4    400     zxc      Land
4   5    500     bnm       Sea

df1 = df1.join(df2.set_index('store_code'), on=['store']).drop('serialNo', 1)
print (df1)
   id  store address warehouse
0   1    100     xyz      Land
1   2    200     qwe       Sea
2   3    300     asd      Land
3   4    400     zxc      Land
4   5    500     bnm       Sea

29
задан good_evening 26 February 2012 в 18:09
поделиться

10 ответов

Да, он должен быть уникальным.

HTML4:

http://www.w3.org/TR/html4/struct/global.html

Раздел 7.5.2:

id = name [CS] Этот атрибут присваивает имя элементу. Это имя должно быть уникальным в документе.

HTML5:

http://www.w3.org/TR/html5/dom.html# the-id-attribute

Атрибут id указывает уникальный идентификатор его элемента (ID). Значение должно быть уникальным среди всех идентификаторов в домашнем поддереве элемента и должно содержать как минимум один символ. Значение не должно содержать пробелов.

32
ответ дан czerny 25 August 2018 в 03:32
поделиться

Это в основном весь смысл идентификатора. :) Идентификаторы специфичны, их можно использовать только один раз на странице. Классы могут использоваться как довольные.

1
ответ дан Bram Vanroy 25 August 2018 в 03:32
поделиться

Браузеры были снисходительны к этому (много лет назад, когда css был молод) и позволяют использовать ID более одного раза.

Однако идентификаторы yes должны быть уникальными и использоваться только один раз.

Если вам нужно использовать css-форматирование более одного раза, используйте CLASS.

2
ответ дан cjtech 25 August 2018 в 03:32
поделиться

Есть отличные ответы на тот же вопрос в https://softwareengineering.stackexchange.com/questions/127178/two-html-elements-with-same-id-attribute-how-bad-is-it .

Один лакомый кусочек, не упомянутый выше , состоит в том, что если существует несколько одинаковых id s одной и той же страницы (что происходит, хотя это и нарушает standard):

Если вам нужно обойти это (это печально), вы можете использовать $("*#foo"), который убедит jQuery использовать getElementsByTagName и вернуть список всех согласованных элементов.

-1
ответ дан Community 25 August 2018 в 03:32
поделиться

С помощью Javascript вы можете ссылаться только на один элемент, используя ID. document.getElementById и селектор jQuery $ вернут только первое соответствие элемента. Поэтому не имеет смысла использовать один и тот же идентификатор для нескольких элементов.

1
ответ дан keune 25 August 2018 в 03:32
поделиться

Да, идентификаторы уникальны. Класс не является.

1
ответ дан Michele Spagnuolo 25 August 2018 в 03:32
поделиться

Технически, по стандарту HTML5 ID должен быть уникальным на странице - https://developer.mozilla.org/en/DOM/element.id

работал на чрезвычайно модульных веб-сайтах, где это полностью игнорируется и работает. И это имеет смысл - самая удивительная часть.

Мы называем это «компонентность»

Например, у вас может быть компонент на вашей странице, который является своего рода виджетом. У этого есть вещи внутри с их собственными уникальными идентификаторами, например, «ok-button»

. Когда на странице есть много этих виджетов, у вас есть технически неверный HTML. Но имеет смысл компонентыize ваших виджетов, чтобы каждый из них ссылался на свою собственную кнопку ok, например, если использовать jquery для поиска из собственного корня, это может быть: $widgetRoot.find("#ok-button")

Это работает для нас, думали, что технически идентификаторы не должны использоваться вообще, как только они не уникальны.

Как указано выше, даже YouTube делает это, так что это не так ренегат

0
ответ дан PandaWood 25 August 2018 в 03:32
поделиться

из mdn enter image description here [/g1] https://developer.mozilla.org/en/DOM/element.id

, поэтому я думаю, что лучше быть. ..

6
ответ дан Royi Namir 25 August 2018 в 03:32
поделиться

Идентификаторы всегда должны быть уникальными.

Каждый имеет уникальный идентификационный номер (например, номер социального страхования), и в социальном классе

есть много людей]
2
ответ дан user 25 August 2018 в 03:32
поделиться

Январь 2018, здесь есть Youtube HTML, вы можете видеть id = "button" id = "info" дублируются.

1
ответ дан vanduc1102 25 August 2018 в 03:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: