Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.09.2012, 01:16
Кандидат Javascript-наук
Отправить личное сообщение для OklickSpb Посмотреть профиль Найти все сообщения от OklickSpb
 
Регистрация: 17.02.2012
Сообщений: 130

Создание следующего Div'а
Есть такая страница:
<div id="test_[B]1[/B]">
<input type="text" name="address_1" id="address_1" value="" placeholder="Адрес" size="25" class="NewAdvertAddress" />

<input type="text" name="schedule_1" id="schedule_1" value="" size="15" onclick='schedule(1, "false")' placeholder="Выберите график" class="NewAdvertSchedule" />

<textarea name="comment_1" id="comment_1" placeholder="Комментарии" cols="70" rows="2" class="NewAdvertComment"></textarea>
</div>


Необходимо получить все элементы этого дива и клонировать
так, что бы полчилось:
<div id="test_[B]2[/B]">
<input type="text" name="address_2" id="address_2" value="" placeholder="Адрес" size="25" class="NewAdvertAddress" />

<input type="text" name="schedule_2" id="schedule_2" value="" size="15" onclick='schedule(2, "false")' placeholder="Выберите график" class="NewAdvertSchedule" />

<textarea name="comment_2" id="comment_2" placeholder="Комментарии" cols="70" rows="2" class="NewAdvertComment"></textarea>
</div>

Пробовал функцией .children();
Но не знаю, как среди всех забранных элементов выцепить один...
Ответить с цитированием
  #2 (permalink)  
Старый 20.09.2012, 08:58
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от OklickSpb
Пробовал функцией .children();
Но не знаю, как среди всех забранных элементов выцепить один...
Как вариант...
http://jquery-docs.ru/Core/eq/#position
Ответить с цитированием
  #3 (permalink)  
Старый 20.09.2012, 08:59
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от OklickSpb
Необходимо получить все элементы этого дива и клонировать
так, что бы полчилось:
Больше похоже на создание нового эелемента, чем на именно клонирование.
Ответить с цитированием
  #4 (permalink)  
Старый 20.09.2012, 13:20
Кандидат Javascript-наук
Отправить личное сообщение для OklickSpb Посмотреть профиль Найти все сообщения от OklickSpb
 
Регистрация: 17.02.2012
Сообщений: 130

С этим разоюрался,
делаю так:
$("#AddressInformation_0").children().map( function() {
var clon = $("#"+this.id).clone();
var nameExplode = this.name.split('_');
var nextName = +nameExplode[1]+1;
clon.attr('name', nameExplode[0]+'_'+nextName).attr('id', nameExplode[0]+'_'+nextName).appendTo('#AddressInformation_1');});

Но вот появляется следующий вопрос, как мне отредактировать событие OnClick?
При вызове this.onclick, JQuery возвращает не ожидаемую строку:
schedule(0, "false"), которую можно сплитом поделит и отредактировать, а вот такое:
function anonymous(event) {
schedule(0, "false")
}

И это .split(','), не поддается, что делать?
Пожалуйста помогите...
Ответить с цитированием
  #5 (permalink)  
Старый 20.09.2012, 13:30
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от OklickSpb
как мне отредактировать событие OnClick?
Его не обязательно редактировать... Можно написать некий, более универсальный обработчик.

Например ту циферку хранить в некоем параметре элемента... Пусть скрипт берет нужное значение из него...
Ответить с цитированием
  #6 (permalink)  
Старый 20.09.2012, 13:34
Кандидат Javascript-наук
Отправить личное сообщение для OklickSpb Посмотреть профиль Найти все сообщения от OklickSpb
 
Регистрация: 17.02.2012
Сообщений: 130

А вы не могли бы пример написать? Хотя бы как это делать?
Ответить с цитированием
  #7 (permalink)  
Старый 20.09.2012, 13:40
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Сообщение от OklickSpb
А вы не могли бы пример написать?
Я все жду тестовых примеров от тебя...
А пока только огрызки на которых и показать-то ничего не покажешь...
Ответить с цитированием
  #8 (permalink)  
Старый 20.09.2012, 13:50
Кандидат Javascript-наук
Отправить личное сообщение для OklickSpb Посмотреть профиль Найти все сообщения от OklickSpb
 
Регистрация: 17.02.2012
Сообщений: 130

Воть
<div id="AddressInformation_0" class="AddressInformation">
<input type="text" name="address_0" id="address_0" value="" placeholder="Адрес" size="25" class="NewAdvertAddress" />

<input type="text" name="schedule_0" id="schedule_0" value="" size="15" onclick='schedule(0, "false")' placeholder="Выберите график" class="NewAdvertSchedule" />

<textarea name="comment_0" id="comment_0" placeholder="Комментарии" cols="70" rows="2" class="NewAdvertComment"></textarea>
<p>
<button name="addAddress_0" id="addAddress_0" type="button" class="NewAdvertAddAddress" onclick='PriceAddAddress("add, 0")'>Добавить адрес</button></p>
</div>


JQuery:
function PriceAddAddress(type ,number)
    {
        if(type == 'add')
        {
var NextNumber = number + 1;
//Создаем новый ДИВ с заранее высчитанным NextNumber
            $('#AddressInformation_'+number).after('<div id="AddressInformation_'+nextNumber+'" class="AddressInformation"></div>');
//передаем название ДИВА, который необходимо клонировать с 
//измененными id и name
PriceAddNewInput('#AddressInformation_'+nextNumber);
}
 else
        {
            $('#AddressInformation_'+number).remove();
        }
}


function PriceAddNewInput(div)
    {
//перебираем все дочерние элементы и перебирая изменяем ID и Name
        $(div).children().map( function() {
            var clon = $("#"+this.id).clone();
            var nameExplode = this.name.split('_');
            var nextName = +nameExplode[1]+1;
            //Вставляем в ДИВ, сощданный нами ранее
            clon.attr('name', nameExplode[0]+'_'+nextName).attr('id', nameExplode[0]+'_'+nextName).appendTo('#AddressInformation_'+nextName);
        });
    }

Последний раз редактировалось OklickSpb, 20.09.2012 в 21:57.
Ответить с цитированием
  #9 (permalink)  
Старый 20.09.2012, 20:54
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,205

Опять огрызки...
Ответить с цитированием
  #10 (permalink)  
Старый 20.09.2012, 22:03
Кандидат Javascript-наук
Отправить личное сообщение для OklickSpb Посмотреть профиль Найти все сообщения от OklickSpb
 
Регистрация: 17.02.2012
Сообщений: 130

Отредактировал, что еще надо то?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание глобального события kez jQuery 1 17.09.2012 11:49
Создание скрипта "Итеррационные циклы" по формуле krasopetka Общие вопросы Javascript 0 17.11.2011 12:42
Создание HTML страниц Sportlife89 (X)HTML/CSS 7 03.06.2011 15:04
Создание скрипта! Создание диктанта для учеников! Елизавета Работа 10 30.06.2010 21:00
2 Div'а. Fixed и relative. Без наездов )) madgals (X)HTML/CSS 4 09.02.2009 13:22