Клонировать раздел формы и сохранять значения при ошибке (PHP & jQuery) - PullRequest
0 голосов
/ 25 февраля 2012

Я редактирую часть формы заявления о приеме на работу, где кандидат может добавить несколько значений «предыдущий работодатель».В этой части есть несколько полей, которые мне нужно клонировать и сохранить значения при отправке.Клонированные поля должны оставаться заполненными при наличии ошибок при отправке.

Сайт уже использует jQuery и использует PHP и Pear для обработки отправки и проверки формы.

<h3>Previous Employer</h3>              
<ul>
    <li>                
      <span>Date of Hire</span>
        <input type="text" name="field41" value="<? echo $_POST['field41']; ?>" class="sm requiredField"> 
    </li>
    <li>
      <span>End Date </span>
        <input type="text" name="field42" value="<? echo $_POST['field42']; ?>" class="sml requiredField"> 
    </li>
</ul>
<ul>
    <li>
      <span>Name of Employer </span>
        <input type="text" name="field43" value="<? echo $_POST['field43']; ?>" class="sm requiredField"> 
    </li>
    <li>
      <span>Address </span>
        <input type="text" name="field44" value="<? echo $_POST['field44']; ?>" class="sml requiredField"> 
    </li>
</ul>
<ul class="last" id="emp">
    <li>
      <span><a href="#emptop" class="add_emp_field">Add Another Position</a></span>  
    </li>
</ul>
...

Как лучше всегообрабатывать клонирование этого куска полей + как я могу сохранить их значения, чтобы поля не очищались при возникновении ошибки?Кроме того, как я могу сохранить значение из поля <select> при отправке с ошибками?

1 Ответ

0 голосов
/ 25 февраля 2012

Что ж, если предполагается автоматическое обновление серверной части с клонированным пользователем, я бы предложил использовать вызов ajax для взаимодействия с серверной частью.Тогда вы можете в каждом ul (элементе) списка иметь атрибут rel, хранящий идентификатор сотрудника.Затем, при клонировании, вы бросаете этот идентификатор с помощью вызова ajax, чтобы он мог собрать правильную информацию для клонирования.

Как только клон сделан в бэкэнде, вы можете заставить его отбросить данные в ответ.Может ли массив JSON?Получив данные, вы можете просто добавить в список клонированный элемент со значениями, полученными из ответа ajax.

...