我的代码在 FF 中可以正常工作,但在 IE 中不能正常工作。某些值隐藏在第二个下拉列表中,具体取决于所选的第一个下拉列表的值。这些值在 FF 中正确隐藏,但所有内容都显示在 IE 中:
function updateMountingMethod() {
var selectedVal = $('#attrib-13 option:selected').text().split(" ")[0];
$.each($("#attrib-7").children(), function() {
var optionText = $(this).text();
var values = optionText.split('|')[1];
if (values != undefined) {
if (values.substring(1, 3) != selectedVal) {
$(this).css('display', 'none');
}
else {
$(this).text($(this).text().split("|")[0] + $(this).text().split("|")[2]);
}
}
})
}
如果这还不是很清楚,这里有一个更好的描述。
我有一个 jQuery 代码,每次更改下拉值时都会调用它。当值更改时,它会获取所选元素的大小。显示的值看起来像 11 英尺、15 英尺、19 英尺,所以我将它拆分为只获取数字而不是英尺。根据选择的值,它需要更新遵循以下格式的下一个下拉菜单:
第 1 项 | 11'11"|
第 2 项 | 15'9"|
第 3 项 | 19'9"|
...
我不想显示
| |
之间的东西,它只是将每个项目与所选长度匹配(即选择第一个下拉列表中的 11 ft 选项,然后在第二个下拉列表中只显示 11'11"
选项下)。谁能告诉我为什么这些额外的值没有隐藏在 IE 中? 最佳答案
在这种情况下,我做的第一件事是针对 W3C 验证 HTML;事情在 IE 中通常不起作用,因为 HTML 不是 100% 兼容。有关我发现的一些问题,请参阅 http://hogsmill.wordpress.com/info/
关于javascript - jQuery 在 IE 中不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4606464/