Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Определение второго класса, зная первый (https://javascript.ru/forum/jquery/57928-opredelenie-vtorogo-klassa-znaya-pervyjj.html)

Levelleor 26.08.2015 17:43

Определение второго класса, зная первый
 
У элемента 2 класса: один статический, второй динамический. Так как я знаю статический мне нужно определить первый класс, не подскажете как это сделать с помощью JQuery?

Благодарю за внимание!

Step48_rus 26.08.2015 17:46

можно спросить? а зачем тебе знать 2-ой класс?

Levelleor 26.08.2015 18:00

Можно. Может вы заодно альтернативу придумаете. Один класс описывает стили блока, а второ показывает айди предмета(в общем это по моему проекту). Предметы могут повторятся, потому айди не подходит. Я записал в класс, но пока что мне страшно смотреть на то что я нашел в интернете.

Deff 26.08.2015 18:01

<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>

  <script>
  $(document).ready(function(){
    var static = 'a1', reg = new RegExp('\s*'+static+'\s*','')
    var cl2 = $.trim($("div."+static).attr('class').replace(reg,''));
    alert(cl2);
  });
  </script>
</head>
<body>
<div class="a1 b2">class="a1 b2"</div>
</body>
</html>

Deff 26.08.2015 18:04

Цитата:

Сообщение от Levelleor (Сообщение 385809)
Можно. Может вы заодно альтернативу придумаете. Один класс описывает стили блока, а второ показывает айди предмета(в общем это по моему проекту). Предметы могут повторятся, потому айди не подходит. Я записал в класс, но пока что мне страшно смотреть на то что я нашел в интернете.

Проще добавить новый атрибут data-id_target="ID" вместо второго класса (не нужно парсить регуляркой тогда)
Может использован и в качестве селектора
a1[data-id_target="ID"]{
  ...
}

рони 26.08.2015 18:04

Levelleor,
берёшь className элемента удаляешь что знаешь остаётся нужное

Levelleor 26.08.2015 18:06

рони,
Удалять явно не вариант... Хотя если потом вернуть... Возможно это хорошая идея. Но мне больше нравится другая.
Deff,
А обращаться этому через attr?

Levelleor 26.08.2015 18:08

Погодите секунду, дайте мне сформулировать вопрос поточнее, ибо я уже запутался...

рони 26.08.2015 18:09

Цитата:

Сообщение от Levelleor
Удалять явно не вариант... Хотя если потом вернуть

бред какойто, вариант Deff, тоже самое что я предложил

Deff 26.08.2015 18:11

Цитата:

Сообщение от рони
Levelleor,
берёшь className элемента удаляешь что знаешь остаётся нужное

Да тож хорошая идея
$(document).ready(function(){
    var static = 'a1'
    var cl2 = $("div."+static).clone().removeClass(static).attr('class');
    alert(cl2);
  });


Часовой пояс GMT +3, время: 18:22.