Jquery基于数据属性的前一个最接近的输入

时间:2014-08-24 00:41:13

标签: jquery

我试图找到最接近的输入的值,之前限制为具有数据属性值的输入,但不知道问题在哪里

var $row = $(this).closest("tr");
var $closest_product = $row.prevAll('tr').first().find(":selected[data-producttype='Product']");
var $closerow = $closest_product.closest('tr');
var $cp_length = parseFloat($closerow.find('.length').val());
alert($cp_length);

上面的代码只能在结果位于前一行的前面找到值,但如果结果是2行或更多行,则永远不会返回结果。

1 个答案:

答案 0 :(得分:0)

您是否已尝试更改

var $closest_product = $row.prevAll('tr').first().
find(":selected[data-producttype='Product']");

var $closest_product = $row.prevAll('tr').
find(":selected[data-producttype='Product']");

它看起来就像你选择了之前的所有tr,然后是第一个找到你正在寻找的tr而不是搜索所有tr。

不知道html只是一个猜测:也许最接近选择正确的tr

var $closest_product = $row.closest("tr:selected[data-producttype='Product']");