我的代码在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英尺,所以我把它分成只得到数字而不是英尺。根据选择的值,它需要更新下一个下拉菜单,该菜单遵循以下格式:
Item 1 | 11'11" | Item 2 | 15'9" | Item 3 | 19'9" | ...
我不希望显示| |
之间的内容,只是将每个项目与所选长度匹配(即选择第一个下拉列表中的11英尺选项,然后仅选择{ {1}}选项显示在第二个下拉列表中)。谁能告诉我为什么这些额外的值不会隐藏在IE中?
答案 0 :(得分:1)
我在这种情况下做的第一件事就是针对W3C验证HTML;因为HTML不是100%兼容的,所以在IE中通常不起作用。有关我找到的一些问题,请参阅http://hogsmill.wordpress.com/info/