У меня есть страница, которая никогда не обновляется, и все серверные мудрые ретранслируются с использованием Ajax. Существует форма, которая запрашивает у пользователя информацию, а затем спрашивает, сколько страниц они хотят иметь. Количество страниц варьируется от 2 до 15. Как только пользователь будет выполнен, они перейдут к следующей части (без обновления). В следующей части пользователь может создавать свои страницы. Отобразится форма и попросит пользователя ввести субтитры и текст. Предположим, пользователь желает 10 страниц. Эта форма будет отмечена как страница 10. Когда пользователь заполнит эту информацию, они нажмут кнопку «+», где отображается следующая форма (стр. 9), пользователь вводит данные, а затем нажимает «+», , чтобы отобразить форму номер 3 (стр. 8) и т. д. Как сделать так, чтобы каждая отображаемая форма была уникальной для этого номера страницы? Кроме того, как я могу сделать так, чтобы, если пользователь нажимает кнопку «Назад», чтобы изменить количество страниц, скажем, 11, соответственно изменяются номера на следующей странице (т.е.: первая форма будет на странице 11, вторая форма будет страницей 10 и т. Д.).Создание пронумерованных форм на основе ввода пользователем
Вот мой код первой части:
HTML
<form class="article_information_form" action="" method="POST">
<p>Number of pages</p>
<select id="numPages" name="numPages">
<option value="" selected></option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
</select><br>
<input id="btn" type="submit" name="article_info_btn" value="Submit">
</form>
</div> <!--End of article information div-->
JQuery
$('.article_information_form').on('submit', function(e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: '',
data: $(this).serialize(),
success: function(data) {
$(".article_Information").fadeOut("slow");
$(".article_properties").fadeIn("5000");
$('#pageNumber').text($('#numPages option:selected').val());
}
});
})
Вторая часть
HTML
<form id="article_properties_form">
<p>Page Number</p><p id="pageNumber"></p>
<p>Subtitle</p>
<input type="text">
<p>Text</p>
<textarea></textarea>
<input type="submit" value="Submit/Update">
</form>
<div id="button" style="width: 25px; height: 25px; background-color: orange; border-radius: 50%"><p style="text-align: center; line-height: 25px">+</p></div>
</div> <!--End of article properties div-->
JQuery
$('#button').click(function()
{
$('#pageNumber').text($('#numPages option:selected').val() - 1);
});
Как я должен сделать это так, что, когда пользователь нажимает на кнопку "+", форма создается с помощью логической упорядоченной страницы номер? i.e: первая форма страницы 10, вторая форма страницы 9 и т. д., и эти числа должны адаптироваться на основе любых изменений, внесенных в общее количество страниц.
Но почему мне нужно очистить поля ввода для формы свойств статьи? Обратите внимание, что когда пользователь нажимает кнопку «+», я хочу, чтобы произошло две вещи. Другая форма, которая будет добавляться после того, как свойства формы будут сформированы с одинаковыми входами, но это технически другая форма, и я хочу, чтобы номер страницы был меньше предыдущего. – user2896120
О, так что вы говорите гипотетически, если пользователь выбрал 10 страниц, на странице было бы 10 форм после того, как они щелкнули каждый знак «+»? Я бы клонировать HTML этой формы, как:. вар $ articlePropsTemplate = $ («# article_properties_form») клона() А затем добавить этот шаблон к вмещающей DIV ... номер страницы, есть глобальная переменная (или только одна за пределами области действия этих обработчиков jquery), которая содержит текущий номер страницы, и вы просто вычитаете из этого –
Да! И тогда, если пользователь решает сделать это 9 страниц, когда они возвращаются, номера должны соответственно обновляться. – user2896120