На форме у меня есть два флажка, скажем, Master и Slave. Всякий раз, когда мастер проверяется, ведомый должен быть проверен (хотя ведомый может быть снят без необходимости индивидуального нажатия на него). На загрузке формы - Мастер установлен для проверки (значение по умолчанию), что означает, что ведомое устройство также необходимо проверить.Как переключить состояние флажка с помощью jQuery в Internet Explorer
Затем у меня есть обработчик события onChange, который вручную проверяет и отменяет ведомое устройство в зависимости от состояния ведущего устройства. Здесь он не работает, как раз в IE. Он отлично работает в других браузерах. Я понятия не имею, почему это происходит.
Я использую jQuery и некоторый класс css, который просто переключает между отмеченным изображением и непроверенным изображением. Это проблема только с флажком CSS (визуальный/графический). Значение все еще верно для этого флажка.
Вот код
dojo.ready(function() {
// some code removed for simplicaity sake
$("#militaryOfficial").attr("checked", true);
$("#waiveTax").attr("checked", true);
}
$('#militaryOfficial').click('change', toggleTaxWaive);
});
function toggleTaxWaive(){
if($("#militaryOfficial").is(':checked'))
{
if(!$("#waiveTax").is(':checked'))
{
$("#waiveTax").trigger("click");
}
}else
{
$("#waiveTax").attr('checked', false);
}
}
HTML, является довольно простой. Добавление в соответствии с запросами в комментарии
<div class="checkBox_Border">
<span class="cds_spanCheck" style="background: url("/images/checkbox_nonSelect.png")
no-repeat scroll 0% 0% transparent;"></span>
<span class="cds_spanCheck" style="background: url("/images/checkbox_Select.png") no-
repeat scroll 0% 0% transparent;"></span>
<input id="waiveTax" class="checkBox_innerWrap" type="checkbox" checked="checked"
value="true" name="waiveTax">
</div>
Просьба сообщить. Любая помощь очень ценится.
Вы можете разместить некоторые HTML? –
Или, по крайней мере, опубликовать его на скрипке. – Oybek
В вашем опубликованном коде есть несколько серьезных синтаксических ошибок: это не сработает. Я думаю, это просто проблема с копией. Например. addResetButton(); need "function() {" вместо ";" в конце. Однако вы можете попробовать установить свойство checked следующим образом: some_input.prop ('checked', 'checked'); и снимите его так: some_input.prop ('checked', ''); Работает для меня во всех браузерах. Возможно, IE путают true/false ... –