Попробуйте изменить эту строку:
$.each(ele.inputs, function(i) {
на эту строку:
ele.inputs.each(function() {
Объяснение:
Существует две формы each()
в jQuery.
Итерация по карте или массиву:
$.each([1,2,3], function(index, value){
});
или , при итерации по объекту jQuery:
$("a").each(function(){
});
http://api.jquery.com/jQuery.each/
$(this)
означает, что вы ожидаете только при втором использовании:
$("a").each(function(){
$(this).remove();
});
Live vs. Bind:
$("a").click(someClickEventHandler);
... привязывает обработчик события нажатия someClickEventHandler
к каждому тегу a
, который существует при его выполнении.
$("a").live("click", someClickEventHandler);
... привязывает обработчик события нажатия someClickEventHandler
к каждому *Тег 1040 *, который существует, когда он выполняется, И он также будет привязывать обработчик события клика someClickEventHandler
к каждому событию a
, которое когда-либо будет существовать.Например, если из ответа Ajax создается тег a
, обработчик события будет автоматически связан.