:visible 选择器在 Internet Explorer 中不起作用

Posted

技术标签:

【中文标题】:visible 选择器在 Internet Explorer 中不起作用【英文标题】::visible selector not working in Internet Explorer 【发布时间】:2011-03-24 21:00:50 【问题描述】:

我正在为 ASP.Net 网站开发一些基本的表单验证样式。 我需要选择所有可见的 span 元素,并将 css 样式添加到另一个元素。 (只是为了指出哪些输入字段无效。)

下面的代码在 FF 和 Safari 中就像一个魅力,但在 IE 中失败了。我已将问题缩小到 :visible 选择器。这是 jQuery 代码。

重要提示: 生产站点正在运行 jQuery 1.3.1 在 1.3.2 中对 :visible 选择器进行了更改release notes

$('span.inputError:visible').each(function() 
            $(this).parent().parent().prev('td').children('label').children('span').css('color','red');
        );

这是它的渲染 html

<table  cellspacing="0" cellpadding="3" border="0">
            <tbody>
            <tr>
                <td valign="top" style="text-align: right;" class="address_labels">
                    <label><span>*</span> First Name: </label>
                </td>
                <td>
                    <span id="ctl00_CMain_txtFirstName_wrapper"><input type="text" style="width: 190px;" invalidstyle="inputError" class="radEnabledCss Input" name="ctl00_CMain_txtFirstName_text" id="ctl00_CMain_txtFirstName_text" size="20" value=" zdogg"><input type="text" value=" zdogg" style="border: 0pt none ; margin: -18px 0pt 0pt; padding: 0pt; overflow: hidden; visibility: hidden; width: 1px; height: 1px;" name="ctl00$CMain$txtFirstName" id="ctl00_CMain_txtFirstName"><input type="hidden" name="ctl00_CMain_txtFirstName_ClientState" id="ctl00_CMain_txtFirstName_ClientState" autocomplete="off"></span>
                    <div>
                            <span style="color: Red; display: none;" class="inputError" id="ctl00_CMain_valFirstName">First name is required</span>
                        </div>        
                </td>
            </tr>

        </tbody></table>

【问题讨论】:

查看我的“未回答”我认为我们需要更多信息。 【参考方案1】:

我把你的代码放在:http://jsfiddle.net/BZRWF/1/ 使用 jquery 1.2.6,它似乎工作(我添加了一个按钮来单击以实例化事件)。我在兼容模式下使用 IE8 进行了测试,没有任何问题。

我也在 1.3.2 和 1.4.2 中测试过,在那里也可以正常工作。

【讨论】:

以上是关于:visible 选择器在 Internet Explorer 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

jQuery 属性选择器在 Internet Explorer 中不起作用

jQuery 高级选择器在 Internet Explorer 8 中失败

jquery ui对话框中的基础日期选择器在Internet Explorer中不起作用

win10的iis7服务器监控管理器在哪里开启

网络连接,IPv4无internet访问权限,IPv6连接internet,是啥问题?

Internet Explorer CSS 属性“过滤器”忽略溢出:可见