使用$(selector).each获取每个div的div内的多个输入框的值

时间:2012-02-23 04:09:07

标签: jquery map each

我有一个产品选择列表,点击添加按钮,它将生成信息并显示在具有id的div内的输入框内,每次添加产品时添加新的div,on注册所有产品我想获得这里创建的每个div的输入框的信息代码: 这是制作div和输入的那个

$(document).on('click', '#ap', function() {
    var desctext =  $('#descripcion option:selected').text();
    var descval = $('#descripcion option:selected').val();
    var html = 
        '<div class="productoaline">' +
        '<input type="text" class="id" name="descval" readonly="readonly" value="' + descval + '"/>' +
        '<input type="text" class="text" readonly="readonly" value="' + desctext + '"/>' +
        '<input type="text" class="text" name="cantidad" placeholder="CANTIDAD DESEADA" value=""/>' +
        '<input type="button" class="button remove" value="Quitar" />' +
        '<div>';
    $('#productosa').append(html);
});

这是我到目前为止获得价值的那个

$(document).on('click', '#registrar', function(){
//var idp;
var cant;

// $('.productoaline').each(function(index){

$('.productoaline').each(function(index){
    //idp = $('name=["descval"]').val();
    cant = $('name=["cantidad"]').val();
    alert(index + ':' + cant);
 });

 // });

});

我只需要那些有名字的人如何才能获得每个div的输入。如何选择偶数索引看起来偶数索引是我需要的索引。 谢谢您的帮助!我曾经想过使用地图,但我从来没有使用它,任何见解都会非常感激

1 个答案:

答案 0 :(得分:6)

这里要注意的一些事情......

  • 你只应该在文档中使用一次id,如果你不止一次使用它,你可能想考虑使用一个类,或者尝试迭代id:“productoaline1” ,“productoaline2”等......
  • 在您的每个循环中,您选择#cantidad,这自然只会在第三次给您一个结果。
  • 您应该使用console.log()而不是alert()来显示调试信息。这会将信息输出到浏览器的控制台。您可以通过Firefox的Firebug或Google Chrome的Inspector访问控制台。

我不确定你究竟在问什么,但我认为你可能正在寻找这样的东西:

$('#productoaline > input').each( function( index ){
    console.log( index, $(this).val() );
});