Здравствуйте. Прошу оценить небольшой кусочек кода. Возможно я не правильно его организовал или реализовать функции более сложными способами.
$(document).ready(function() {
var idDriver = 1;
$('#modalAddDriver').hide();
$('#addDriver').click(function(){
//обработчик кнопки Добавить, вызываем окно, содержащее
//форму для добавления нового водителя
$('#addNewDriver').html('Добавить');
});
$('#editDriver').click(function(){
/* Обработчик нажатия кнопки Редактировать
* При нажатии происходит посик первого выбранного checkbox в таблице
* данными из этой строки заполняются поля формы добавления нового водителя
*/
var ch = [];
var i;
var $par1;
$('#tableDriver input[type=checkbox]:checked').each(function() {
ch[i] = this.name;
var par = $(this).parent();
$par1 = $(par).parent();
i = i + 1;
});
//выбираем данные из найденой строки
$td = $par1.find('td');
idDriver = $td[0].innerHTML;
$('#name').val($td[1].innerHTML);
$('#fam').val($td[2].innerHTML);
$('#tele').val($td[3].innerHTML);
$('#age').val($td[4].innerHTML);
$('#status').val($td[5].innerHTML);
$('#model').val($td[6].innerHTML);
$('#addNewDriver').html('Редактировать');
$('#modalAddDriver').show();
});
$('#delDriver').click(function() {
var ch = [];
var i = 0;
$('#tableDriver input[type=checkbox]:checked').each(function() {
ch[i] = this.name;
i = i + 1;
});
$.post('ajax/delDriver.php', {check:ch});
location.reload();
});
$('#addNewDriver').click(function(){
//обработчик нажатия кнопки на форме добавления информации о новом водителе
if ($('#addNewDriver').html() == 'Добавить') {
$.post('ajax/addDriver.php', {name: $('#name').val(), famili: $('#fam').val(),
tele: $('#tele').val(), age: $('#age').val(), state: $('#status').val(),
model: $('#model').val()});
}
else {
$.post('ajax/addDriver.php', {id: idDriver, name: $('#name').val(), famili: $('#fam').val(),
tele: $('#tele').val(), age: $('#age').val(), state: $('#status').val(),
model: $('#model').val()});
}
});
});
Так есть небольшой вопрос. На странице есть таблица с checkbox-ми и когда я нажимаю на кнопку редактировать у меня выполняется следующий код:
$('#tableDriver input[type=checkbox]:checked').each(function() {
ch[i] = this.name;
var par = $(this).parent();
$par1 = $(par).parent();
i = i + 1;
});
Он пробегает по всем выделенным check, а мне хотелось бы, чтобы он находил первый выделенный и останавливал перебор.