Первый элемент массива всегда получается пустым

Рейтинг: 1Ответов: 1Опубликовано: 04.12.2014

Есть такая функция:

var getInfoForPrices = function (arg) {

var dateIn = $(".date-in").val();
var dateOut = $(".date-out").val();
var roomsId = $('.collect-date .rooms-id').val();
var roomsCount = $('.collect-date .rooms-count').val();
var roomsIdArray = roomsId.split(",");
var roomsCountArray = roomsCount.split(",");

$('.collect-date .start-date').val(dateIn);
$('.collect-date .end-date').val(dateOut);

if (arg.hasClass('room-count')) {
    var currentRoomId = arg.attr('id').split('-')[1];
    var currentRoomCount = arg.find('option:selected').val();

    if($.inArray(currentRoomId, roomsIdArray) === -1){
        roomsIdArray.push(currentRoomId);
        roomsCountArray.push(currentRoomCount);
    }
    else {
        var elPos = $.inArray(currentRoomId, roomsIdArray);
        roomsCountArray[elPos] = currentRoomCount;
    }

    $('.collect-date .rooms-id').val(roomsIdArray);
    $('.collect-date .rooms-count').val(roomsCountArray);
}
};

которая служит для того, чтобы собрать данные и подставить их в скрытые поля. Функция вызывается при изменении нескольких полей в другой форме:

$(".date-in, .date-out, .room-count").change(function () {
    getInfoForPrices($(this));
});

Но при этом получается, что первые элементы массивов каждый раз оказываются пустыми

alt text

Как сделать так, чтобы в массив не заносился первый пустой элемент?

Ответы

Ответов пока нет.