После просмотра SandBox я смог увидеть, что код React компилируется в следующий HTML-код:
<div class="ui large label filter_check">
<div class="field">
<label>
<input name="year" type="radio"> Year
</label>
</div>
</div>
Тогда я решил, что вы хотите изменить элемент parent после нажатия поля input
. Это не тривиально и требует изменения родительского элемента, что я и сделал, используя onChange
prop <Form.Field>
:
<Label className="filter_check" size="large">
<Form.Field
label="Year"
control="input"
type="radio"
name="year"
onChange={checkInput}
/>
</Label>
С помощью следующей функции, которая добавляет класс checked
к измененномуэлемент:
function checkInput(e) {
let labelElement = e.target.parentNode;
let bgElement = labelElement.parentNode.parentNode;
bgElement.classList.add('checked');
}
Затем мы обновляем CSS следующим образом:
div.ui.large.label.filter_check.checked {
background-color: red;
}
И - Voilà !