1

我创建了一个函数来隐藏和显示某些字段,问题是标签只是 td 内的文本,应用了标签 id,例如 resolution_type_c_label。我无法隐藏 td 本身,因为它破坏了表格布局,所以我用内包装隐藏了文本。当我想显示字段时,最好删除跨度标签而不删除文本。

$(document).ready(function(){
    hide();

    function hide(){
        if($('#status').val() != 'Resolved') {

            $('#resolution_type_c').hide();
            $('#resolution_type_c_label').wrapInner('<span id="wrap1" style="display:none"></style>');

            $('#resolution_sub_c_label').wrapInner('<span id="wrap2" style="display:none"></style>');
            $('#resolution_sub_c').hide();

            $('#resolution_label').wrapInner('<span id="wrap3" style="display:none"></style>');
            $('#resolution').hide();
        }
        else {
            $('#resolution_type_c').show();
            $('#resolution_sub_c').show();
            $('#resolution').show();
        }

    } */

    $('#status').on('change', function() {
        hide();
    });

});
4

1 回答 1

4

您可以使用.unwrap().wrap()

.unwrap()从 DOM 中移除匹配元素集的父元素,将匹配元素留在原处。

.wrap()围绕匹配元素集中的每个元素包装一个 HTML 结构。

@Spokey 来自他对帖子的评论

$('span').contents().unwrap();
于 2013-10-07T13:34:36.693 回答