Сообщение от ksa
|
Начнём с того что это не форма... Пока есть только один элемент с обработчиком... Никаких других элементов пока не наблюдается... И как они появляются так же не понятно...
При таком назначении обработчика он ну никак больше нигде не появится...
|
Дело в том что даже алерт не работает, для новых форм.
Весь скрипт таков
$(document).ready(function(){
// Добовление формы еще
// Кнопка
var more_form = $('.more_item');
// Колличество форм уже существующих - номера форм
var n = 2;
// То что нужно заменить в форме чтоб она отсылала нужные пост данные
var regN_g = /<span class="number_question">2/g;
var regN_i = /TestQuestion\[2\]/g;
// Функция при клике на кнопку добовления форм еще
more_form.click(function(){
// В цикле добовляем еще 2 формы
for(var i = 1; i <= 2; i++) {
// Заносим в переменную форму для клонирования
var item_form = $('.question_item:last');
var html_form = item_form.html();
n++;
// Формеруем замену
namb = '<span class="number_question">' + n;
form_i = 'TestQuestion[' + n + ']';
// Заменяем
html_form = html_form.replace(regN_i,form_i);
html_form = html_form.replace(regN_g,namb);
//alert(html_form);
// Добовляем форму в конец
more_form.before(html_form);
}
});
// Ответы еще
// Кнопка
var more_answer = $('.more_answer');
// Колличество форм уже существующих - номера форм
var m = 5;
// То что нужно заменить в форме чтоб она отсылала нужные пост данные
var regN_a = /class="number_answer">#1/g;
var regN_if = /\[answer\]\[1\]/g;
// Функция при клике на кнопку добовления форм еще
more_answer.click(function(){
// Заносим в переменную форму для клонирования
var item_form_a = $(this).next('.item_answer');
var html_form_a = item_form_a.html();
//alert(html_form_a);
m++;
// Формеруем замену
namb_a = 'class="number_question">#' + m;
form_i_a = '[answer][' + m + ']';
// Заменяем
html_form_a = html_form_a.replace(regN_if,form_i_a);
html_form_a = html_form_a.replace(regN_a,namb_a);
//alert(html_form_a);
// Добовляем форму в конец
var else_a = $(this).nextAll('.else');
else_a.before(html_form_a);
});
}); //Конец ready
а вот весь HTML страницы
<div id="content">
<script type="text/javascript" src="/css/form_question.js"></script>
<h1>Создание вопросов для теста</h1>
<div class="form">
<form id="test-question-form" action="/admin/testquestion/create/id/61" method="post"> <div class="question_item"><div class="question_item">
<hr />
<span class="number_question">1</span>
<label for="TestQuestion_1_question" class="required">Вопрос <span class="required">*</span></label> <div class="row">
<textarea rows="1" cols="20" name="TestQuestion[1][question]" id="TestQuestion_1_question"></textarea> </div>
<div class="more_answer" >
Добавить еще ответы
</div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#1</span><br />
<textarea rows="1" cols="6" name="TestQuestion[1][answer][1][answer]" id="TestQuestion_1_answer_1_answer"></textarea> <input id="ytTestQuestion_1_answer_1_true" type="hidden" value="0" name="TestQuestion[1][answer][1][true]" /><input name="TestQuestion[1][answer][1][true]" id="TestQuestion_1_answer_1_true" value="1" type="checkbox" /> </div></div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#2</span><br />
<textarea rows="1" cols="6" name="TestQuestion[1][answer][2][answer]" id="TestQuestion_1_answer_2_answer"></textarea> <input id="ytTestQuestion_1_answer_2_true" type="hidden" value="0" name="TestQuestion[1][answer][2][true]" /><input name="TestQuestion[1][answer][2][true]" id="TestQuestion_1_answer_2_true" value="1" type="checkbox" /> </div></div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#3</span><br />
<textarea rows="1" cols="6" name="TestQuestion[1][answer][3][answer]" id="TestQuestion_1_answer_3_answer"></textarea> <input id="ytTestQuestion_1_answer_3_true" type="hidden" value="0" name="TestQuestion[1][answer][3][true]" /><input name="TestQuestion[1][answer][3][true]" id="TestQuestion_1_answer_3_true" value="1" type="checkbox" /> </div></div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#4</span><br />
<textarea rows="1" cols="6" name="TestQuestion[1][answer][4][answer]" id="TestQuestion_1_answer_4_answer"></textarea> <input id="ytTestQuestion_1_answer_4_true" type="hidden" value="0" name="TestQuestion[1][answer][4][true]" /><input name="TestQuestion[1][answer][4][true]" id="TestQuestion_1_answer_4_true" value="1" type="checkbox" /> </div></div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#5</span><br />
<textarea rows="1" cols="6" name="TestQuestion[1][answer][5][answer]" id="TestQuestion_1_answer_5_answer"></textarea> <input id="ytTestQuestion_1_answer_5_true" type="hidden" value="0" name="TestQuestion[1][answer][5][true]" /><input name="TestQuestion[1][answer][5][true]" id="TestQuestion_1_answer_5_true" value="1" type="checkbox" /> </div></div>
<div class="else"></div>
</div></div>
<div class="question_item"><div class="question_item">
<hr />
<span class="number_question">2</span>
<label for="TestQuestion_2_question" class="required">Вопрос <span class="required">*</span></label> <div class="row">
<textarea rows="1" cols="20" name="TestQuestion[2][question]" id="TestQuestion_2_question"></textarea> </div>
<div class="more_answer" >
Добавить еще ответы
</div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#1</span><br />
<textarea rows="1" cols="6" name="TestQuestion[2][answer][1][answer]" id="TestQuestion_2_answer_1_answer"></textarea> <input id="ytTestQuestion_2_answer_1_true" type="hidden" value="0" name="TestQuestion[2][answer][1][true]" /><input name="TestQuestion[2][answer][1][true]" id="TestQuestion_2_answer_1_true" value="1" type="checkbox" /> </div></div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#2</span><br />
<textarea rows="1" cols="6" name="TestQuestion[2][answer][2][answer]" id="TestQuestion_2_answer_2_answer"></textarea> <input id="ytTestQuestion_2_answer_2_true" type="hidden" value="0" name="TestQuestion[2][answer][2][true]" /><input name="TestQuestion[2][answer][2][true]" id="TestQuestion_2_answer_2_true" value="1" type="checkbox" /> </div></div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#3</span><br />
<textarea rows="1" cols="6" name="TestQuestion[2][answer][3][answer]" id="TestQuestion_2_answer_3_answer"></textarea> <input id="ytTestQuestion_2_answer_3_true" type="hidden" value="0" name="TestQuestion[2][answer][3][true]" /><input name="TestQuestion[2][answer][3][true]" id="TestQuestion_2_answer_3_true" value="1" type="checkbox" /> </div></div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#4</span><br />
<textarea rows="1" cols="6" name="TestQuestion[2][answer][4][answer]" id="TestQuestion_2_answer_4_answer"></textarea> <input id="ytTestQuestion_2_answer_4_true" type="hidden" value="0" name="TestQuestion[2][answer][4][true]" /><input name="TestQuestion[2][answer][4][true]" id="TestQuestion_2_answer_4_true" value="1" type="checkbox" /> </div></div>
<div class="item_answer" ><div class="item_answer" >
<span class="number_answer">#5</span><br />
<textarea rows="1" cols="6" name="TestQuestion[2][answer][5][answer]" id="TestQuestion_2_answer_5_answer"></textarea> <input id="ytTestQuestion_2_answer_5_true" type="hidden" value="0" name="TestQuestion[2][answer][5][true]" /><input name="TestQuestion[2][answer][5][true]" id="TestQuestion_2_answer_5_true" value="1" type="checkbox" /> </div></div>
<div class="else"></div>
</div></div>
<div class="more_item">
<br clear="all"/>
<p>Еще формы</p>
</div>
<div class="row buttons">
<input type="submit" name="yt0" value="Сохранить" /> </div>
</form>
</div>
</div>
Я просто не хотел выкладвать кучу кода, а показать суть))