Я новичок в программировании. Я нашел css настроенный bootstrap переключатель на inte rnet.
.switch {
position: relative;
display: inline-block;
width: 35%;
height: 25px;
}
.switch input {
display: none;
}
.slider {
position: absolute;
cursor: pointer;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #ca2222;
-webkit-transition: 0.4s;
transition: 0.4s;
border-radius: 25px;
}
.slider:before {
position: absolute;
content: "";
height: 16px;
width: 16px;
left: 4px;
bottom: 4px;
background-color: white;
-webkit-transition: 0.4s;
transition: 0.4s;
border-radius: 50%;
}
input:checked + .slider {
background-color: #2ab934;
}
input:focus + .slider {
box-shadow: 0 0 1px #2196f3;
}
input:checked + .slider:before {
-webkit-transform: translateX(26px);
-ms-transform: translateX(26px);
transform: translateX(50px);
}
.slider:after {
content: "OFF";
color: white;
display: block;
position: absolute;
transform: translate(-50%, -50%);
top: 50%;
left: 50%;
font-size: 10px;
font-family: Verdana, sans-serif;
}
input:checked + .slider:after {
content: "ON";
}
Я хочу, чтобы он включал / выключал, если результат равен true / false. Этот переключатель отображается в каждой строке таблицы, и я установил его в качестве значения по умолчанию в HTML code
<div>
<label class="switch">
<input type="checkbox" id="ckte{{i}}" checked>
<div class="slider round"></div>
</label>
</div>
Когда результат, полученный от API, равен true, он останется выбором по умолчанию, если значение false, после этого переключатель изменится на «OFF».
Я пытался изменить этот переключатель с помощью jquery в соответствии с этими условиями, но он не меняется:
if (this.list[i].accion == 'true') {
$(`#ckte${i}`).prop(':checked', true);
}
else{
$(`#ckte${i}`).prop(':checked', false);
}
Я не знаю не знаю, нужно ли мне вызывать css классы вместо ".prop ()" или есть другой способ изменить переключатель.
Я использую Angular 8.2