根据空状态显示和隐藏标签

时间:2020-06-22 22:38:46

标签: html jquery show-hide

每次我在不同的输入上键入内容时,我都会在html span标签中附加几个按钮。

<span id="pill_filters>
  <button id="filterCreated">Filter name here</button>
  <button id="filterCreated2">Filter name here</button>
</span>

只要此span标记内有按钮,我也想显示标签,如果没有,我想隐藏所说的标签。

<label id="label_sc">Search Criteria:</label>

到目前为止,我的jquery是

function showSCLabel(){
  if ($("#pill_filters").html.is(':empty')){
     $("#label_sc").addClass("d-none");
  }else{
   $("#label_sc").removeClass("d-none");
  }
}

但是它似乎不起作用。该标签自开始就已经具有“ d-none”类,即使如此,它仍在显示。我究竟做错了什么? :empty状态不是这样吗?我该怎么用呢?非常感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

  • if语句缺失()
  • .html.is是无效的jQuery

使用:

if ( $("#pill_filters").is(':empty') ) {    

答案 1 :(得分:0)

没有jQuery的答案:

//span
const span=document.getElementById("pill_filters");
//label
const label=document.getElementById("label-sc");

span.addEventListener('DOMSubtreeModified',function(){
  //if innerHTML is not ""
  if(span.innerHTML){
    //show label
    label.style.display="block";
  }else{
    //hide label
    label.style.display="none";
  };
};