У меня есть веб-приложение, состоящее в основном из большой формы с информацией. Форма разбивается на несколько вкладок, чтобы сделать ее более читаемой для пользователя:
<form>
<div id="tabs">
<ul>
<li><a href="#tab1">Tab1</a></li>
<li><a href="#tab2">Tab2</a></li>
</ul>
<div id="tab1">A big table with a lot of input rows</div>
<div id="tab2">A big table with a lot of input rows</div>
</div>
</form>
Форма динамически расширяется (дополнительные строки добавляются в таблицы). Каждые 10 секунд форма сериализуется и синхронизируется с сервером.
Теперь я хочу добавить интерактивную форму на одну из вкладок: когда пользователь вводит имя в поле, эта информация отправляется на сервер и возвращается идентификатор, связанный с этим именем. Этот идентификатор используется как идентификатор для некоторых динамически добавленных полей формы.
Быстрый эскиз такой страницы будет выглядеть так:
<form action="bigform.php">
<div id="tabs">
<ul>
<li><a href="#tab1">Tab1</a></li>
<li><a href="#tab2">Tab2</a></li>
</ul>
<div id="tab1">A big table with a lot of input rows</div>
<div id="tab2">
<div class="associatedinfo">
<p>Information for Joe</p>
<ul>
<li><input name="associated[26][]" /></li>
<li><input name="associated[26][]" /></li>
</ul>
</div>
<div class="associatedinfo">
<p>Information for Jill</p>
<ul>
<li><input name="associated[12][]" /></li>
<li><input name="associated[12][]" /></li>
</ul>
</div>
<div id="newperson">
<form action="newform.php">
<p>Add another person:</p>
<input name="extra" /><input type="submit" value="Add" />
</form>
</div>
</div>
</div>
</form>
Вышеуказанное не будет работать: вложенные формы не допускаются в HTML. Однако мне действительно нужно отобразить форму на этой вкладке: это часть функциональности этой страницы. Я также хочу, чтобы поведение отдельной формы: когда пользователь обращается к возврату в поле формы, кнопка "Добавить" отправить нажата, и действие отправки инициируется в частичной форме.
Каков наилучший способ решить эту проблему?