Селектор jQuery, который выбирает имя класса только с одним номером, следующим за этим именем класса

#jquery #jquery-selectors #jquery-calculation

#jquery #jquery-селекторы #jquery-вычисление

Вопрос:

итак, у меня есть следующая структура:

  <div class="num1">1,2</div>  
 <div class="num11">2,2</div>  

 <div class="num2">5,4</div>  
 <div class="num21">3,2</div>  

 etc...
  

Я хочу селектор jQuery, который будет выбирать только num1 и num2, numX, где X — это только одно число. В настоящее время у меня есть селектор:

 alert($("div[class^='num']").max());  
  

который, конечно, возвращает все числа, поэтому мне интересно, есть ли какой-то способ легко справиться с этим. Кстати, если кому-то интересно, что такое .max(), это из плагина для вычисления jQuery

Ответ №1:

Вот оно

 $("div[class^='num']").filter(function(){
   return /^numd$/.test($(this).attr("class"));
})
  

Он использует регулярное выражение для выбора элементов с подходящими именами классов.

Надеюсь, это поможет

Комментарии:

1. Это помогает, хотя теперь я потерян, потому что, похоже, я не могу получить доступ к возвращаемым значениям должным образом. Я новичок в jQ: (Вот что я пытался: jsfiddle.net/Hitman666/sQLu7/2

2. Я видел jsfiddle, который вы пишете innerHtml вместо innerHTML . Этим проблема решена. В качестве альтернативы вы можете использовать jquery t.html() вместо t[0].innerHTML