我有少量的 Jquery,它根据单击复选框来隐藏/显示两个元素。现在这在 Firefox 中完美运行,但是当我在 IE8 中测试时,只有在单击文本框然后单击 TR 中的任意位置后,切换才会起作用。这是我的复选框代码:
<input type="checkbox" id="noEOS@(Model.QuoteLineKey)" name="noEOS@(Model.QuoteLineKey)" checked="@(Model.HasNoEndOfSupportDate)" onchange='javascript: noEOS(@(Model.QuoteLineKey)); return false;'/>
这是我的 Jquery 函数
function noEOS(id) {
$('#spanNoEOS' + id).toggle();
$('#spanEOS' + id).toggle();
if ($('#noEOS' + id).is(':checked')) {
$('#EndOfSupportDate' + id).val('');
} else {
$('#EndOfSupportDate' + id).val($('#CoTermExpiryDate').val());
}
}
我尝试将 .toggle 更改为以下,但没有成功。
var elem = $('#spanNoEOS' + id)[0];
if (elem.style.display == 'none')
$('#spanNoEOS' + id).show();
else {
$('#spanNoEOS' + id).hide();
}
var elem2 = $('#spanNoEOS' + id)[0];
if (elem2.style.display == 'none')
$('#spanEOS' + id).show();
else {
$('#spanEOS' + id).hide();
}