2016-06-02 4 views
0

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

, который я могу сделать из этой команды

$(".XXXX tr").has("input.YYYYYY[value = 36816323]") 

и она отлично работает, но теперь я хочу, чтобы выбрать все родитель, чей ребенок вход имеет значения больше, чем 36816323, так что я изменить в соответствии с ним

$(".XXXX tr").has("input.YYYYYY[value >= 36816323]") 

но теперь его непризнанное выражением, задающая ошибкой

любая помощь будет оценена

+0

'$ ('input.YYYYYY'). Filter (function() { return + $ (this) .val()> 36816323; }). Ближайший ('tr');' – Tushar

ответ

1

Используйте .filter() метод:

$(".XXXX tr").filter(function(){ 
    return +$(this).find('input').val() > 36816323; 
}).css('background', 'yellow'); 

Здесь .filter() позволяет фильтровать конкретные tr элементов, которые содержат вход со значением более чем 36816323. Но не забудьте проанализировать входное значение как число либо с ведущим +, либо parseInt(val, 10).

1

Вы можете использовать,

$(".XXXX tr").has("input.YYYYYY").filter(function() { 
    return parseInt($(this).val()) > 36816323; 
}).closest("tr"); 
  • Фильтр по каждому входу.
  • Затем преобразуйте его в число.
  • Затем верните родительский tr после сравнения значения.