Как проверить "флажок" динамически - jQuery Mobile

С HTML создается флажок:

<form>
   <input type="checkbox" id="category1">Category1<br>
</form>

С javascript мы можем установить флажок:

$("#category1")[0].checked = true

Теперь я пытаюсь создать ту же страницу с jquery-mobile. Флажок выглядит следующим образом:

<form>
    <label>
        <input name="checkbox-0 " type="checkbox">Check me
    </label>
</form>

Почему здесь нет id? Имя id? Должен ли я удалить имя атрибута и создать его с именем id?

Как я могу установить этот флажок здесь с помощью Javascript/jQuery?

Я пробовал код выше, но он не работает для этого флажка.

Ответы

Ответ 1

Вам нужно обновить его после изменения его '.prop, используя .checkboxradio('refresh'). Это правильный способ проверить флажок/радио в jQuery Mobile.

Демо

$('.selector').prop('checked', true).checkboxradio('refresh');

Ссылка: jQuery Mobile API

Ответ 2

Вы можете сделать:

$('input[name="checkbox-0"]').prop("checked", true).checkboxradio('refresh'); //sets the checkbox
var isChecked =  $('input[name="checkbox-0"]').prop("checked"); //gets the status