Каков правильный способ проверить и снять флажок в HTML5?

Посмотрел на спецификацию HTML, но не мог сделать из него головы или хвосты: http://www.w3.org/TR/html5/the-input-element.html#attr-input-checked

Каков правильный способ проверки флажка в HTML (не динамически)?

checked="true"
checked="checked"

Каков правильный способ снять снимите флажок?

<input type="checkbox" /> with no checked attribute
checked="false"
checked="none"

Где проверить спецификацию HTML, чтобы установить/снять флажок?

Ответ 2

В соответствии с черновиками HTML5 атрибут checked является атрибутом boolean "и" Наличие логического атрибута для элемента представляет истинное значение, а отсутствие атрибута представляет собой ложное значение ". Это имя атрибута имеет значение и достаточно. Таким образом, чтобы сначала установить флажок, вы используете

<input type=checkbox checked>

По умолчанию, при отсутствии атрибута checked флажок сначала не установлен:

<input type=checkbox>

Сохранение вещей таким образом упрощает их, но если вам нужно соответствовать синтаксису XML (т.е. использовать HTML5 в линеаризации XHTML), вы не можете использовать имя атрибута самостоятельно. Тогда допустимые (в соответствии с черновиками HTML5) значения - это пустая строка и строка checked, регистр нечувствителен. Пример:

<input type="checkbox" checked="checked" />

Ответ 3

<input type="checkbox" checked />

HTML5 не требует наличия атрибутов для значений

Ответ 4

В jQuery:

Чтобы установить флажок:

$("#checkboxid").attr("checked","checked");

Чтобы снять флажок:

$("#checkboxid").removeAttr("checked");

Другие ответы намекают на решение и указывают на документацию, которая после дальнейшего копания приведет вас к этому ответу. У Jukka K. Korpela есть причина, по которой это правильный ответ, в основном я следил за его ссылкой, а затем искал документы jQuery, чтобы добраться до этого результата. Просто подумал, что я спасу будущих людей, которые найдут в этой статье эти дополнительные шаги.

Ответ 5

Вы можете ссылаться на эту страницу на w3schools, но в основном вы можете использовать любой из:

<input checked>
<input checked="checked">
<input checked="">

Ответ 6

Дополнительный ответ Роберту ответить http://jsfiddle.net/ak9Sb/ в jQuery

При получении/установке состояния флажка можно встретить эти феномены:

.trigger("click");

Проверяет флажок не отмечен, но не добавляйте атрибут checked. Если вы используете триггеры, не пытайтесь получить состояние с атрибутом "checked".

.attr("checked", "");

Не снимает флажок...

Ответ 7

<form name="myForm" method="post">
  <p>Activity</p> 
  skiing:  <input type="checkbox" name="activity" value="skiing"  checked="yes" /><br /> 
  skating: <input type="checkbox" name="activity" value="skating" /><br /> 
  running: <input type="checkbox" name="activity" value="running" /><br /> 
  hiking:  <input type="checkbox" name="activity" value="hiking"  checked="yes" />
</form>