2

我想通过 jquery 获取输入中的所有值,除了最后一个类中的最后一个输入.tr,但它对我不起作用,如何解决?

我尝试如下:

演示:http: //jsfiddle.net/d4xZK/

HTML:

<div class="tr">
    <input type="text" value="111">
</div>
<div class="tr">
    <input type="text" value="222">
</div>
<div class="tr">
    <input type="text" value="333">
</div>
<div class="tr">
    <input type="text" value="444">
</div>

jQuery:

$('.tr').each(function(){
    var mpiVal = $('.tr input').not(':last').val();
    alert(mpiVal)
)}
4

5 回答 5

3

你可以slice()关闭最后一个:

$('.tr').slice(0, -1).each(function() {
    var mpiVal = $('input', this).val();
    console.log(mpiVal);
});

演示

于 2013-02-05T11:29:24.390 回答
2
$('.tr').not(':last').each(function(){
    var mpiVal = $(this).children('input').val();
    alert(mpiVal)
});

在这里演示http://jsfiddle.net/d4xZK/4/

于 2013-02-05T11:32:38.427 回答
1

或者您可以简单地为此使用正确的选择器;

$('.tr:not(:last) input').each(function(){
    var mpiVal = $(this).val();
    alert(mpiVal);
});
于 2013-02-05T11:33:10.687 回答
0

最后一行有语法错误

  var arr = []
  $('.tr:not(:last)').each(function(){
     arr.push.call(arr,$(this).find('input').first().val());         
  });
  alert(arr);
于 2013-02-05T11:33:18.130 回答
0
$(".tr:not(:last) input").map(function(){ return $(this).val() }).get()

退货["111", "222", "333"]

于 2013-02-05T11:34:43.510 回答