jquery если $ это не имеет ClassName, сделайте действие - PullRequest
0 голосов
/ 18 февраля 2020

Я вижу много ответов, но, похоже, ни один из них не работает.

Все мои кнопки имеют класс "Trev". Я хочу проверить, содержит ли класс, на который нажали, класс «Namdons», и, если это так, сделать некоторый код. Однако, если нет, выполните некоторый код.

Некоторый код, который наполовину работает:

$(".Trev").click
(
    function(e) 
    {

        if($(this).hasClass("Namdons")) 
        {
            console.log("Namdons");
        }
        else
        {
            console.log("Asdf");
        }
        e.preventDefault();

    }
);

Однако условие «else» не выполняется.

Я пробовал:

$(".Trev").click
(
    function(e) 
    {

        if($(this).hasClass("Namdons")) 
        {
            console.log("Namdons");
        }
        if(!$(this).hasClass("Namdons"))   //added apostrophe
        {
            console.log("Asdf");
        }
        e.preventDefault();

    }
);

согласно этим страницам:

Как проверить, не имеет ли элемент определенного класса c? Как использовать hasClass, чтобы определить, является ли класс НЕ тем классом, который я хочу?

Команда "not" не применяется, так как я хочу получить только один элемент, а не выбрать кучу из них. Более подробно на этих страницах объяснено.

HTML:

<div class="Trev Width50" onclick="Button('buttonname')"></div>

и

<button onclick="Namdons()" class="Namdons Trev TextAlignCenter">ButtonTitle</button>

также пытались изменить div Width50 на кнопку:

<button class="Trev Width50" onclick="Button('buttonname')"></button>

В "1037", похоже, также нет "elseif", верно?

Спасибо.

1 Ответ

0 голосов
/ 18 февраля 2020

Так как вы помечаете javascript, я помещаю пример в ваниль js. Я оставляю это для вас, чтобы перевести это на jQuery. Я также положил заметки внутри:

const trev = document.querySelectorAll('button.trev'); // get button with .trev style
for (var i=0; i < trev.length; i++) { // itterate them
  trev[i].addEventListener('click', function() { // add click event
    if (this.classList.contains('Namdons')) {alert('This is .Namdons');} // if it has .Namdons alert it
    else {alert('This is NOT .Namdons');} // it not alert that
  });
} 
<button class="Trev TextAlignCenter">ButtonTitle</button>
<button class="Namdons Trev TextAlignCenter">ButtonTitle</button>
<button class="Trev TextAlignCenter">ButtonTitle</button>
<button class="Namdons Trev TextAlignCenter">ButtonTitle</button>
<button class="Trev TextAlignCenter">ButtonTitle</button>

Подробнее о classList на MDN

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...