Двойные кавычки в HTML не-литералах?Что является правильным: type = "checkbox" или type = checkbox? - PullRequest
1 голос
/ 08 ноября 2010

поэтому у меня есть это ...

< input type="checkbox" id="chvre" value="1"/>

Здесь имеет смысл, что значение id заключено в кавычки, так как это будет строковый идентификатор.Но как насчет значения type?Разве checkbox не является типом, как String и Boolean?Почему я продолжаю видеть эти якобы не-литералы между двойными кавычками?Это плохая практика?К чему я должен стремиться привыкнуть?

Кроме того, что если я хочу, чтобы значение value (это "1") было числом, а не обрабатывалось как строка?Если я читаю это значение в javascript, var val = document.getElementById("chvre").value я должен использовать вещь parseInt().

Итак, как правильно делать эти вещи?Я просто все дважды цитирую?Разве я не должен?

Ответы [ 2 ]

2 голосов
/ 08 ноября 2010

При использовании атрибутов вы должны помнить правила XML, а также правила общего использования атрибутов.

Они следующие:

  • Атрибуты должны находиться в пределахоткрывающий тег элемента.Тег закрытия - это просто маркер места, и в скобках не должно быть ничего, кроме косой черты и имени тега.
  • Все имена атрибутов должны быть в нижнем регистре.
  • Все атрибуты должны иметь значение.
  • Все значения атрибутов должны быть в двойных кавычках.Помните, что двойные кавычки и две одинарные кавычки - это не одно и то же.
  • Все атрибуты должны быть включены в список, разделенный пробелами, без других символов между ними.

Подробнее:

1 голос
/ 08 ноября 2010

HTML и XML не имеют представления о строковых и нестроковых литералах. (Это языки разметки, а не нормальные языки)
Двойные кавычки необязательны в HTML, но семантической разницы нет type=checkbox и type="checkbox".

Все значения атрибутов должны быть в двойных кавычках.

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