Jump to content
  • 0

Почему рекомендуют указывать в name и id разные значения?


Anymaxis
 Share

Question

Слышал мнение, что желательно в тегах формы не давать атрибутам name и id одинаковые значения. Многие этой рекомендации не следуют.

Почему это надо делать? И почему не обязательно? Откуда пошло и с чем связано?

Хуже:

<input type="text" name="login" id="login">

Лучше:

<input type="text" name="login" id="login-field">

 

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 1

Могу предположить, что возможно причина в том, что элементы с name могут быть с одинаковым именем, а id должны быть разными.

И чтобы не перепутать name c id вводят разное название. Чисто фишка для читабельности кода, не более того.

Edited by Svatov
  • Like 1
Link to comment
Share on other sites

  • 0
В 29.04.2016 в 19:00, Svatov сказал:

Могу предположить, что возможно причина в том, что элементы с name могут быть с одинаковым именем, а id должны быть разными.

И чтобы не перепутать name c id вводят разное название. Чисто фишка для читабельности кода, не более того.

Действительно.

Получается, исходя из этой логики так для практики, при необходимости:

<form>
  <input type="radio" name="animal" value="lion" id="animal-lion">
  <input type="radio" name="animal" value="tiger" id="animal-tiger">
  <input type="radio" name="animal" value="fox" id="animal-fox">
</form>

Остальные не обязательные случаи для читабельности.

Спасибо.

Link to comment
Share on other sites

  • 0
4 часа назад, by chris сказал:

@Anymaxis, только минус используется для классов, а для Id нижнее подчеркивание.

Спасибо. Не знал. А есть пруфы? Это уже конечно оффтоп, но любопытно. В таком случае может вообще camelCase юзать.

А по теме, вот встретил (но не понял) точку зрения всем известного SelenIT (но это было давно).

В 06.11.2010 в 22:14, SelenIT сказал:

...

Еще те же IE любят путать ID и name (getElementById может вернуть элемент по любому из них). Верная страховка - по возможности избегать name вообще, а для элементов форм делать id и name одинаковыми (кроме радиокнопок, где это не получается).

Link to comment
Share on other sites

  • 0

Это действительно было очень давно:). Тогда еще попадались якоря через <a name="..."> и была актуальна поддержка IE6-7. В каком-то из тех IE и был баг, что document.getElementById("something") мог вернуть элемент с name="something". Сейчас неактуально.

7 часов назад, Anymaxis сказал:

Это уже конечно оффтоп, но любопытно.

Мне тоже любопытно. Подозреваю, что речь о рекомендациях какой-то конкретной методологии. В БЭМ вообще вот так.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Similar Content

    • By Kasl68
      Не могу значение с одного поле на другой, через  JavaScript. Помогите пожалуйста!
      <!DOCTYPE HTML> <html lang="kz"> <head>     <meta charset="utf-8"> <title> ВЫВОД </title> </head> <body>    <input type="text" name="Vvod" value="Пример" placeholder="введите имя"> <input type="text" name="Vyvod"> <br> <input type="submit"></button> <br> <script type="text/javascript">     function submit() {     let Vvod=document.getElementsByTagName('Vvod');     Vyvod.value=Vvod;     console.log(Vyvod.value);     } </script>   </body> </html>  
    • By Bourdun
      Появился вопрос на который я так и не смог найти ответа. Нужно создать регистрацию и авторизацию с базой данных и я не понимаю как подключить php файл к html? В остальном попытаюсь разобраться сам
    • By AndreyCore
      При нажатии на кнопку в форме, сайт не перезагружается как нужно.
      В чем проблема?
      <div class ='div-form'> <h1>CALC</h1> <form id = 'myform'> <label for = 'inp-1'>Число 1</label> <input class = 'inp' id = 'inp-1' type ='text'></input> <br/><p></p> <label for = 'inp-2'>Число 2</label> <input class = 'inp' id = 'inp-2' type = "text"></input></form><br/> <input id = 'bu-end' type ='submit' value ="Суммировать"></input> <p class = 'sum' id = 'sum'>Сумма: <span class = 'sum-r' id = 'sum-r'></span></p> </form><hr/> </div>  
    • By iluha22
      Здравствуйте народ.
      Подскажите, как при заполнении формы обратной связи изменить язык всплывающих подсказок или язык ошибок обработчика формы?
      Форму создал на английском, а подсказки и ошибки всплывают по-русски.
      Спасибо.
    • By partisan42
      Доброго дня.
      Хочу реализовать такую вещь.
      Мне нужно сделать форму с некоторым количеством полей. Но количество полей должно быть вариативным.
      Как я это себе представляю, есть поле для ввода с выпадающим списком, в котором я выбираю например число 4. И у меня под ним появляется 4 поля для ввода, например textarea.
      Как это можно реализовать?
      Я не прошу всё расписывать за меня, но прошу хотя бы указать направление в котором можно копать.
      Заранее всем спасибо.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy