Показать сообщение отдельно
  #1 (permalink)  
Старый 10.06.2013, 20:26
Интересующийся
Отправить личное сообщение для prizrak39 Посмотреть профиль Найти все сообщения от prizrak39
 
Регистрация: 19.11.2012
Сообщений: 12

правильность кода
Здравствуйте. Прошу оценить небольшой кусочек кода. Возможно я не правильно его организовал или реализовать функции более сложными способами.
$(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, а мне хотелось бы, чтобы он находил первый выделенный и останавливал перебор.
Ответить с цитированием