I have a jquery event which creates dynamic HTML input texts. And inside that loop, I need to show a calender. So my js codes are as below:
$('.nof').keyup(function(){
$('.myfld').empty();
var html = '';
nof = $('.nof').val();
html = html + '<div class="partners">';
for(var x = 1; x <= nof; x++) {
html = html + '<div class="form_box_2">';
html = html + '<div class="applicantform_row"><label>Name : </label><input type="text" name="partner_name_'+x+'" /></div>';
html = html + '<div class="applicantform_row"><label>Sex : </label><input type="text" name="partner_sex_'+x+'" /></div>';
html = html + '<div class="applicantform_row"><label>Date of Birth: </label><input type="text" class="appdate" id="dob_'+x+'" name="partner_dob_'+x+'" onchange="getAge();" /></div>';
html = html + '<div class="applicantform_row appage"><label>Age : </label><div id="age_'+x+'"></div> </div>';
html = html + '<div class="applicantform_row"><label>PAN : </label><input type="text" name="partner_pan_'+x+'" /></div>';
html = html + '</div>';
$('.myfld').html(html);
$(function() {
$( "#dob_"+x ).datepicker({ /*dateFormat: 'dd/mm/yy', */defaultDate : '1/1/1980',changeYear : true,changeMonth : true });
});
}
var html_end = '</div>';
$('.myfld').append(html_end);
});
I am able to produce the HTML textfields nuber entered in the box, but the jquery calender works for the last input field only ! Whats the reason ? Do I need to put the calender code somewhere else ?