Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Internet Explorer中的JQuery-选择表列_Jquery_Html_Html Table_Internet Explorer 8_Formatting - Fatal编程技术网

Internet Explorer中的JQuery-选择表列

Internet Explorer中的JQuery-选择表列,jquery,html,html-table,internet-explorer-8,formatting,Jquery,Html,Html Table,Internet Explorer 8,Formatting,我正在尝试在页面上动态调整表列的大小。在FF和Chrome中一切都很好,但像往常一样,在InternetExplorer中它似乎正在崩溃。经过大量调试,我发现问题是由于处理表时,JQuery选择器在internetexplorer中无法正常工作造成的。如果您试图在多行表中选择一列,JQuery将只选择第一列。下面是一些显示问题的快速代码 <html> <head> <script type="text/javascript" src="jquery.js">&

我正在尝试在页面上动态调整表列的大小。在FF和Chrome中一切都很好,但像往常一样,在InternetExplorer中它似乎正在崩溃。经过大量调试,我发现问题是由于处理表时,JQuery选择器在internetexplorer中无法正常工作造成的。如果您试图在多行表中选择一列,JQuery将只选择第一列。下面是一些显示问题的快速代码

<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("td#2").css('background-color', 'red');  
});
</script>
</head>

<body>
<table>
<tbody>
<tr><td id="1">1</td><td id="2">2</td></tr>
<tr><td id="1">1</td><td id="2">2</td></tr>
</tbody>
</table>
</body>
</html>

您会注意到,在IE中,只有前2个高亮显示。如果我正确理解了自己的代码,就应该突出显示这两个2。有什么解决方法吗?

不要使用必须唯一的ID,而要使用当前版本,使用类和$td.2,或者两者都不使用…并使用,如下所示:

$(document).ready(function(){
  $("td:nth-child(2)").css('background-color', 'red');  
});
这样,您的标记就变得简单多了:

<table>
    <tbody>
        <tr><td>1</td><td>2</td></tr>
        <tr><td>1</td><td>2</td></tr>
    </tbody>
</table>

-为了进行比较,.

在当前版本中,使用类和$td.2,或者两者都不使用,而不是必须唯一的ID,并使用如下:

$(document).ready(function(){
  $("td:nth-child(2)").css('background-color', 'red');  
});
这样,您的标记就变得简单多了:

<table>
    <tbody>
        <tr><td>1</td><td>2</td></tr>
        <tr><td>1</td><td>2</td></tr>
    </tbody>
</table>

-为了进行比较,.

id属性在htmlid中必须是唯一的属性在HTMLTanks中必须是唯一的!这个特定的问题最终变成了另一个问题,我从一个容器div得到了一些css,它把我搞砸了,但是我用你的提示修复了我页面中的许多其他错误!愚蠢的我,我自己技术HTML/CSS/JS我从来没有学会ID必须是唯一的。哎呀!谢谢你,尼克!这个特定的问题最终变成了另一个问题,我从一个容器div得到了一些css,它把我搞砸了,但是我用你的提示修复了我页面中的许多其他错误!愚蠢的我,我自己技术HTML/CSS/JS我从来没有学会ID必须是唯一的。哎呀!