Вот моя сильно типизированныхотображение JSON вернулся из контроллера сильно типизированных
@using (Html.BeginForm("Index", "Home",null, FormMethod.Post, new { id="FormPost" }))
{
@Html.TextBoxFor(x => x.Name) @Html.ValidationMessageFor(x => x.Name)
<br />
@Html.TextBoxFor(x => x.LastName) @Html.ValidationMessageFor(x => x.LastName)
<br />
@Html.TextBoxFor(x => x.Age) @Html.ValidationMessageFor(x => x.Age)
<br />
<input type=submit value="submit" />
<br /><br />
}
Это класс вид модели:
public class MyViewModel
{
[Required(ErrorMessage="Please enter first name") ]
public string Name { get; set; }
[Required]
public string LastName { get; set; }
[Required]
public int Age { get; set; }
}
я отправляю форму обратно в индексный метод действия, используя сценарий ниже
ReusableJqueryPost.prototype.CommonPost = function (formId) {
var fid = $("#" + formId);
var validated = $(fid).valid();
if (validated) {
$.ajax({
type: 'POST',
url: $(fid).attr('action'),
data: $(fid).serialize(),
accept: 'application/json',
error: function (xhr, status, error) {
alert('error: ' + xhr.responseText + '-' + error);
},
success: function (response) {
alert('DATA SAVED!');
var resp = response;
}
});
}
};
метод Index Действие теперь может вернуться в ActionResult
return View(objMyViewModel);
или или JsonResult
return Json(objMyViewModel);
Если бы я был не с помощью Jquery пост и возвращает данные в качестве ActionResult тогда я Wouldnt нужно сделать что-нибудь на клиентская сторона. Asp.net MVC будет заботиться о связывании значения в соответствующие текстовые поля на счет @Html.TextBoxFor(....)
Поскольку я использую JQuery пост, чтобы отправить к способу действия и возврата данных в JsonResult, я хочу это же гибкость автоматического привязки каждого элемента в json-строке к соответствующим текстовым полям Html.TextBoxFor(...)
вместо того, чтобы использовать jquery для поиска текстовых или выборочных пакетов (если они есть), а затем привязки данных к ним на основе значений, полученных в строке json ,
Вопросы
- Возможно ли это под каким-нибудь особенность ASP.NET MVC из коробки?
- Доступен только для использования jquery для поиска текстовых или выпадающих меню или любого другого элемента ввода по имени/id, а затем присваивания значения из строки json
- Есть ли способ написать это задание один раз, так что что я могу повторно использовать один и тот же код, не повторяя его по всему проекту для каждого представления? так же, как у меня есть один метод почтовых сообщений, который будет использоваться в проекте.
Благодаря