如何通过按钮的值隐藏js中的按钮?

时间:2019-11-22 10:47:18

标签: javascript angular angular-material

如何通过按钮的值隐藏按钮?

示例:

<button class="mat-raised-button mat-primary" color="primary" mat-raised-button="">
    <span class="mat-button-wrapper">RESET</span>
    <div class="mat-button-ripple mat-ripple" matripple=""></div>
    <div class="mat-button-focus-overlay"></div>
</button>

实际上,我想隐藏具有RESET的按钮。但是我无法在其类的帮助下将其隐藏,因为同一类正在其他按钮中使用。如果尝试使用类别名称隐藏,则所有具有相同类别的按钮都将被隐藏。

有帮助吗?

4 个答案:

答案 0 :(得分:0)

首先,您的问题尚不清楚,我无法很好地理解您到底想做什么以及如何做。如果使用JS,则使用关键字'this','this'将用于按钮触发事件的当前范围。

示例:

document.querySelector('button class').on('click', function() { 

   this.el.style.display = 'none'

});

当然,在事件函数中,您可以获得单击按钮的值并检查其值。

或者您可以将click el传递给函数:

document.querySelector('button class').on('click', function(el) { 

           var value = el.value;

           if(value === 'something') {
               el.style.display = 'none'
           }
        });

答案 1 :(得分:0)

您的问题不是直截了当的,您要隐藏值为“ RESET”的按钮吗?

答案 2 :(得分:0)

您的问题尚不清楚。这是你的意思吗?

var elements = document.getElementsByClassName("mat-button-wrapper");
for(var i = 0; i < elements.length; i++) {
  elements[i].style.display = "none";
  console.log("Hidden: " + elements[i]);
}

答案 3 :(得分:0)

如果您想隐藏此按钮:

<button class="mat-raised-button mat-primary" color="primary" mat-raised-button="">
    <span class="mat-button-wrapper">RESET</span>
    <div class="mat-button-ripple mat-ripple" matripple=""></div>
    <div class="mat-button-focus-overlay"></div>
</button>

因为它包含单词RESET

您可以使用以下内容:

// Get all relevant buttons
let myButtons = [...document.getElementsByClassName('mat-raised-button')];

// Cycle through buttons
myButtons.forEach((button) => {

  let matButtonWrapper = button.getElementsByClassName('mat-button-wrapper')[0];

  // Execute actions according to the mat-button-wrapper text
  switch(matButtonWrapper.textContent) {

    case ('RESET') : button.style.opacity = '0'; break;
    // case ('Another word here') : actions here; break;
    // case ('Another word here') : actions here; break;
    // case ('Another word here') : actions here; break;
    // case ('Another word here') : actions here; break;
  }

});