任何其他取代可见性崩溃的解决方案

any other solution to replace visibility collapse

本文关键字:解决方案 崩溃 可见性 其他 取代 任何      更新时间:2023-09-26

大家好,我对IE10和chrome有问题。展开表格后,IE10 不会折叠,对于 chrome,它将在它之间留出空格。它在IE8,Firefox中的工作。我已经尝试显示:无和显示:表行。但它仅适用于IE 10。

这是JavaScript代码

function loadSessionLogEvents(id) { 
        var visibility = $('eventTR' + id).style.visibility;
        if (visibility == 'collapse')
        {
            $('eventTR' + id).style.visibility = 'visible';
            var tURL = '<%=request.getContextPath()%>/home/Folder.action?listSessionLogEvents=&sessionLogId=' + id;
            new Ajax.Updater($('detailTR' + id), tURL, { 
                method: 'get',
                evalScripts: 'hidden'
            });
        } else {
            $('eventTR' + id).style.visibility = 'collapse';
        }
    }

所以我更改后的代码应该是这样的吗?

function loadSessionLogEvents(id) { 
        var visibility = $('#eventTR' + id).css('visibility');
        if (visibility == 'collapse')
        {
            $('eventTR' + id).css('visibility','');
            var tURL = '<%=request.getContextPath()%>/home/Folder.action?listSessionLogEvents=&sessionLogId=' + id;
            new Ajax.Updater($('detailTR' + id), tURL, { 
                method: 'get',
                evalScripts: 'hidden'
            });
        } else {
            $('eventTR' + id).css('visibility','collapse');
        }
    }

这是点击按钮功能

href="#" onclick="javascript:loadSessionLogEvents('${file.session.id}')">

根据评论,这里存在多个问题

  1. 您需要对eventTRdetailTR元素使用 id 选择器而不是元素选择器
  2. jQuery 包装器对象没有调用 style 的属性,您需要使用 .css() 来获取和设置 css 值

尝试

function loadSessionLogEvents(id) { 
    var $tr = $('#eventTR' + id);
    var visibility = $tr.css('visibility')
    if (visibility == 'collapse') {
        $tr.css('visibility', 'visible')
        var tURL = '<%=request.getContextPath()%>/home/Folder.action?listSessionLogEvents=&sessionLogId=' + id;
        new Ajax.Updater($('#detailTR' + id), tURL, { 
            method: 'get',
            evalScripts: 'hidden'
        });
    } else {
        $tr.css('visibility', 'collapse')
    }
}