помогите с jquery ajax и шаблонами в asp.net mvc - PullRequest
0 голосов
/ 05 марта 2011

Итак, у меня есть сложная форма для IncomeDeclaration.

Будет отображаться текстовое поле GrossIncome для каждого действия, с которым связан IncomeDeclaration ... все это выполняется на сервере и работает просто отлично.... проблема в.Пользователь также должен иметь возможность добавлять действия на лету .. через javascript ... поэтому, когда пользователь нажимает на кнопку «Добавить действие», выпадающий список и текстовое поле должно быть добавлено внизу списка действий… вот что я получил до сих пор.

<tbody id="activities">
            @Html.EditorFor(model => model.income.EconomicActivityIncomeDeclarations)

            </tbody>
        </table>
        <a href="#" id="add_activity">Agregar Otra Actividad</a>

    </fieldset>

    <script type="text/javascript">
        $("#add_activity").click(function () {

            $.getJSON('/IncomeDeclarations/GetEconomicActivities', function (data) {
                var select = new Select();
                var data = new Array();

                for (var i = 0; i < data.length; i++) {
                    var option = new Option(data[i]["name"], data[i]["i"])
                    //should do something here
                }


                //should call the template and append to #activities
            });
        });
</script>


    <script id="template" type="text/x-jquery-tmpl">
    <tr>
        <td><select name="income.EconomicActivityIncomeDeclarations[${SomeNumber}].EconomicActivityId">
        ${MyOptions}        
        </select></td>
        <td><input type="text" name="income.EconomicActivityIncomeDeclarations[${SomeNumber}].GrossIncome" /></td>>
    </tr>
</script>

}

Атрибут name как для поля select, так и для поля text_ имеет ключевое значение для этой работы ... в противном случае привязка модели не будет работать ... Я думаю, что если переменная SomeNumber установлена ​​в новое значение Date.GetTime() модель Binding должна работать просто отлично ...

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

1 Ответ

0 голосов
/ 05 марта 2011
...