2013-02-13 2 views
0

Я пытаюсь использовать фильтр gt() набора jQuery. Мое желание состоит в том, чтобы очистить все выбранные элементы с более высоким индексом, чем элемент, инициирующий событие изменения. Я уверен, что это связано с тем, что вы не можете получить gt(), чтобы принять переменную thisIndex как целое число и не можете найти синтаксис для этого.Получить фильтр jQuery для принятия целочисленной переменной

$(document).ready(function() { 
    $(".slct").change(function() { // sensitize all slct elements 
     thisIndex = $(".slct").index(this); 
     selGT1 = $(".slct:gt(1)"); // TEST: this correctly selects the elements greater than 1  
     selectsGT = $(".slct:gt(thisIndex)"); // "I WANT thisIndex TO ACT LIKE A INTEGER"  
     $(selectsGT).val(""); // clear elements w/ a index greater than "this" 
    }); 
}); 
+0

Селектор jQuery - это строка. Вы должны построить правильную строку, используя добавление строки, чтобы построить строку, в которой есть числовое значение в ней как строка. – jfriend00

ответ

2

В настоящее время в вашем коде «thisIndex» интерпретируется как часть строки. Вам нужно объединить целое число со строкой. Поэтому следующий фрагмент должен сделать трюк:

selectsGT = $(".slct:gt(" + thisIndex + ")"); 
+0

Спасибо вам большое! – Mike

Смежные вопросы