Я пытаюсь заменить классический флажок по умолчанию заблокированной ссылкой внутри div - он будет отображаться в виде кнопки и при нажатии на него будет переключаться класс.На самом деле переключение класса работает, но мне также нужно решение, как переключать атрибут checked
.См. Ниже
Это мой HTML-код
<div class="editor-field">
<div class="pretty-checkbox">
<input checked="checked" id="IsLegalFirm" name="IsLegalFirm" type="checkbox" value="true" />
<input name="IsLegalFirm" type="hidden" value="false" />
<a href="#" class="checkbox selected">IsLegalFirm </a>
</div>
</div>
<div class="editor-field">
<div class="pretty-checkbox">
<input checked="checked" id="IsTaxable" name="IsTaxable" type="checkbox" value="true" />
<input name="IsTaxable" type="hidden" value="false" />
<a href="#" class="checkbox selected">IsTaxable </a>
</div>
</div>
Скрытый input
существует, потому что ASP.NET MVC вводит его при использовании Html.Checkbox()
помощник.
ЭтоЭто мой JS:
<script type="text/javascript">
$(document).ready(function () {
$(".checkbox").click(
function (event) {
event.preventDefault();
$(this).toggleClass("selected");
// this needs a change
$(this).parent().find(":checkbox").attr("checked", "checked");
});
});
</script>
Очевидно, это включает только checked
, но когда оно уже проверено, оно не снимает галочку.И я считаю, что это должно быть сделано для обоих входов.
Может ли кто-нибудь помочь мне с правильным выбором / решением?