Javascript/PHP,避免CSS冲突

Javascript/PHP,避免CSS冲突,javascript,php,css,html-table,row,Javascript,Php,Css,Html Table,Row,我有一个简单的显示和隐藏Javascript: // JS function used in show/hide connectivity details function in LIB <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> <script> $(document).ready(funct

我有一个简单的显示和隐藏Javascript:

// JS function used in show/hide connectivity details function in LIB
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
    $(".connectivityshow").click(function(event){
        var target = event.target.parentElement.nextSibling;
        $(target).toggle('blind');
    });
});
</script>
我有斑马图案的CSS,所以每一张桌子都是不同的颜色。通过这种布局,隐藏表从CSS中拾取第二种颜色。我试图让CSS只使用3行,但是我有另一个没有显示和隐藏功能的表,它依赖于相同的CSS

你建议我怎样度过这一关

  #main-content table.connectivity_list {
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0px;
    border-bottom: 2px solid #999;
}
#main-content table.connectivity_list thead, #main-content table.connectivity_list thead tr, #main-content table.connectivity_list thead th, #main-content table.connectivity_list thead tr th {
    font-weight: bold;
    font-size: 12px;
    border-top: 2px solid #999;
    border-bottom: 2px solid #999;
}
#main-content table.connectivity_list tbody {
}
#main-content table.connectivity_list tbody tr:nth-child(odd) {
    background: #ddd;
}
#main-content table.connectivity_list tbody tr {
    background: #ccc;
}
*/ #main-content table.connectivity_list td, #main-content table.connectivity_list th {
    padding: 2px;
    line-height: 1.3em;
}
#main-content table.connectivity_list tfoot td .bulk-actions {
    padding: 15px 0 5px 0;
}
#main-content table.connectivity_list tfoot td .bulk-actions select {
    padding: 4px;
    border: 1px solid #ccc;
}
#main-content table.connectivity_list tbody tr:hover td {
    background-color: #eee;
}

我真的不太明白,但是从你问题中的TID和bits中收集,如果你想隐藏没有
类的
tr
,请按以下操作

   if($('table.connectivity_list').find('tr.Class').length == 0)
   {
       //this is tr with no class, hide it
   }

如果我理解正确,您应该能够使用
connectivityshow
向tr添加一个
static
类。然后,在JS中,将选择器更改为
$(“.connectivityshow:not(.static)”)

它应该在任何
连接上运行函数show
单击,除非它还有
static

编辑

在php中,将tr的打印更改为
print'

在js中,将单击事件更改为
$(“.connectivityshow:not(.static)”。单击


执行这两项操作可以根据需要设置
tr
s的样式,而无需添加额外的CSS,但是如果类
static
位于元素上,它也不会运行click事件。

我通过在CSS中创建新类来停止冲突,从而解决了这一问题


谢谢大家。

对不起,我解释得不太好。显示和隐藏都很有效,只是它干扰了现有的CSS。你能解释一下
干扰
的意思吗??是写得太多还是没有实现?我不确定我是否完全理解。你是说,连接方式的css不存在。php着眼于java。您是否建议我在这里添加内容?请查看更新的答案。我还混入了一个错误的元素名,这可能会让您感到不舒服,希望这会把事情弄清楚。有趣的是,整个表现在都消失了,我猜我应该将java更改为//$(“.connectivityshow”)。单击(函数(事件){(旧的)$(“.connectivityshow:不是(.static)”。单击(函数(事件){.EDIT:$(“.connectivityshow:不是”)(.static)”。单击{相同的结果
  #main-content table.connectivity_list {
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0px;
    border-bottom: 2px solid #999;
}
#main-content table.connectivity_list thead, #main-content table.connectivity_list thead tr, #main-content table.connectivity_list thead th, #main-content table.connectivity_list thead tr th {
    font-weight: bold;
    font-size: 12px;
    border-top: 2px solid #999;
    border-bottom: 2px solid #999;
}
#main-content table.connectivity_list tbody {
}
#main-content table.connectivity_list tbody tr:nth-child(odd) {
    background: #ddd;
}
#main-content table.connectivity_list tbody tr {
    background: #ccc;
}
*/ #main-content table.connectivity_list td, #main-content table.connectivity_list th {
    padding: 2px;
    line-height: 1.3em;
}
#main-content table.connectivity_list tfoot td .bulk-actions {
    padding: 15px 0 5px 0;
}
#main-content table.connectivity_list tfoot td .bulk-actions select {
    padding: 4px;
    border: 1px solid #ccc;
}
#main-content table.connectivity_list tbody tr:hover td {
    background-color: #eee;
}
   if($('table.connectivity_list').find('tr.Class').length == 0)
   {
       //this is tr with no class, hide it
   }