Следующим является мой весенний код mvc2
<c:forEach var="trackRecord" varStatus = "number" items="${contractDetails.trackRecordEntries}" >
<tr class="tafont">
<td class="varcar"><form:input readonly = "true" id = "installmentNo" path="trackRecordEntries[${number.index}].installmentNo"/></td>
<td class="varcar"><form:input cssClass="recievedDate" id = "recievedDate" path="trackRecordEntries[${number.index}].recievedDate"/></td>
</tr>
</c:forEach>
он создает html файл, который имеет несколько элементов с тем же именем класса. Всякий раз, когда я нажимаю на любую всплывающее окно выбора даты элемента и работает правильно. но изменения, сделанные с помощью выбора даты, отражаются только в первом элементе, который имеет имя класса 'receivedEDate'. Поэтому для любых элементов выбора даты изменения производятся только в первом элементе.
Вот код выбора даты
$( '.recievedDate').datepicker({
dateFormat: 'dd/mm/yy',
changeMonth:true,
changeYear:true,
maxDate: '0',
});
Любые решения???
Устранена проблема, удалив атрибут id
<td class="varcar"><form:input cssClass="recievedDate" path="trackRecordEntries[${number.index}].recievedDate"/></td>
хотел бы знать причину того же :)
Вам нужно будет обрабатывать более одного, поэтому попробуйте
$('.receivedDate').each(function(){
$(this).datepicker({
dateFormat: 'dd/mm/yy',
changeMonth:true,
changeYear:true,
maxDate: '0',
});
});
Когда ваш запрос будет выполнен, тогда ваш код будет иметь более одного идентификатора, recievedDate
Таким образом, он не будет работать. Дайте другому id для datepicker и в jquery используйте этот способ
$( '.recievedDate','recievedDate1','recievedDate2').datepicker({
dateFormat: 'dd/mm/yy',
changeMonth:true,
changeYear:true,
maxDate: '0',
});