Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #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, а мне хотелось бы, чтобы он находил первый выделенный и останавливал перебор.
Ответить с цитированием
  #2 (permalink)  
Старый 10.06.2013, 20:36
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

var $input = $('#tableDriver input[type=checkbox]:checked:first');
var $row = $input.parents('tr');
Ответить с цитированием
  #3 (permalink)  
Старый 10.06.2013, 20:40
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Для получения из коллекции массива с нужными свойствами используй
var names = $.map($('input'), function(item){ return item.name }); // ['name1', 'name2', ... ]
Ответить с цитированием
  #4 (permalink)  
Старый 10.06.2013, 20:42
Интересующийся
Отправить личное сообщение для prizrak39 Посмотреть профиль Найти все сообщения от prizrak39
 
Регистрация: 19.11.2012
Сообщений: 12

Про коллекции можете немного подробнее сказать?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
скрыть из исходного кода часть javascript кода. javasc Javascript под браузер 10 12.03.2014 09:32
Удаление участка кода replace Dorian_bs Общие вопросы Javascript 3 23.11.2012 23:19
ускорение загрузки iframe кода karencho7777 Общие вопросы Javascript 3 21.11.2012 07:39
Пример кода сохранения в базу html страницы генерированного посредством JavaScripts wayzer Серверные языки и технологии 2 06.09.2012 16:46
Правильность кода baal1988 Общие вопросы Javascript 7 06.09.2008 08:58