Добавить jQuery на основе класса или идентификатора

Я пытаюсь добавить условие к моему jQuery. Мой скрипт:

$("#mycontent a.half.first"+$id).removeClass("half").prependClass("paid");
$("#mycontent2 a.half.second"+$id).removeClass("half").prependClass("paid");

У меня есть ссылка в таблице:

<table id="mycontent">
 <tbody><tr>
 <td>
 <a href="#inbound" onclick="comtype(3547,'inbound', 704)" target="_blank">$184.20</a>
 <p> Я пытаюсь настроить таргетинг на ссылку, показанную выше. Я пробовал следующее с различными вариантами:</p> <pre class="prettyprint linenums"><code>if ( $( "#mycontent" ).hasClass( "half first" ) ) {
 $("#mycontent a.half.first"+$id).removeClass("half").prependClass("paid");
 $("#mycontent2 a.half.second"+$id).removeClass("half").prependClass("paid");
}</code>

Я также пробовал:

<code>if ( $( this ).hasClass( "half first" ) )</code>

Этот код находится в области успеха моего сценария AJAX.

Но я не могу найти правильный способ нацелиться на класс. Что я делаю не так?

2 ответа

Вы должны изменить вас, если условие поиска класса у детей таблицы... вот так:

if ($("#mycontent").find("a.half").length > 0) {
 console.log('children found');
}
<table id="mycontent">
 <tbody><tr>
 <td>
 
 </td>
 </tr>
</tbody></table>


Чтобы добавить к Мартину, вы можете попробовать это.

if ( $( "table#mycontent" ).children().hasClass( "half first" ) ) {
 alert("I have class in it.");
}

licensed under cc by-sa 3.0 with attribution.