jQuery每个附加元素

时间:2012-04-27 22:23:20

标签: javascript jquery

我在jQuery中使用自动完成插件,我创建了一个方法,用于附加在自动完成结果中选择的元素。

$("#buscar").autocomplete({
source: "procesos/buscarPersona.php",
minLength: 2,
select: function(event, ui ){
    var name = ui.item.value;
    var id = ui.item.id_persona;
    $("#acreditados tbody").append('<tr id='+id+'><td>'+name+'<td><td>Monto: $<input name="monto_'+id+'" type="text" /><img id="delete_'+id+'" src="img/ico-delete.gif" /></td></tr>');
}
});

正如您所见,我的代码将输入元素附加到我的页面。然后在其他方法中,我想用以前添加的输入中的值进行操作。

$("#tablaAm").click(function(){
    var montoTotal = 0;
    $("input[name^='monto_']").each(function(index){
        alert(index + ': ' + $(this).val());
    });
    });

问题是.each()不适用于这个新元素。我尝试.each()用于加载页面时存在的输入,我没有问题,问题是加载后附加的元素。

我该如何使这项工作?我尝试了live()方法,但我认为.each不是一个事件。

1 个答案:

答案 0 :(得分:2)

您正在设置名称属性而不是ID。

应该是:

$('input[name^="monto_"]')