2014-02-20 4 views
2

У меня длинная форма, которая была разделена на отдельные страницы, используя частичные виды. Я хочу сохранить данные, введенные в одну форму частичного просмотра, когда пользователь нажимает, чтобы перейти к следующей форме просмотра патента. Затем сделайте так, чтобы, когда они вернутся к предыдущему виду, тогда будут введены данные.Как сохранить данные формы между страницами asp.net mvc?

Так что мне нужно отправить данные на контроллер. Хотя то, что я использую для частичного зрения:

@Ajax.ActionLink("Job Information", "JobInformation", new AjaxOptions { InsertionMode = InsertionMode.Replace, UpdateTargetId = "jobForm"}) 

При нажатии на ссылку действий он принимает их к следующей странице (частичный вид)

Так как я могу отправить форму при нажатии ссылка на действие?

ответ

2

Как я могу отправить форму, когда они нажимают ссылку на действие?

Мне нужно отправить данные на контроллер.

Вместо использования AJAX ActionLink используйте AJAX BeginForm, как показано ниже. Допустим, у вас есть модель, как показано ниже, чтобы заполнить выпадающий список.

public class DDLModel 
{ 
    public List<SelectListItem> Items { get; set; } 
    public string SelectedValue { get; set; } 
} 

Тогда у вас есть контроллер для отображения этой модели -

@model MVC.Controllers.DDLModel 
@{ 
    ViewBag.Title = "Index"; 
} 

<h2>Index</h2> 
<script src="~/Scripts/jquery-1.10.2.min.js"></script> 
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script> 


@using (Ajax.BeginForm("Submit", "Ajax", new AjaxOptions { UpdateTargetId = "SellerWebSettings" }, new { id = "form1" })) 
{ 
    @Html.DropDownListFor(m => m.SelectedValue, Model.Items, "DDL") 
    <input type="submit" value="Click" /> 
} 

<div id="SellerWebSettings"> 
</div> 

В приведенной выше форме, у вас есть AJAX BeginForm(), которая могла бы сделать AJAX все к другому действию контроллера, который будет возвращать PartialView , Модель также будет направлен на частичное представление, как показано на рисунке ниже -

public ActionResult Submit(DDLModel model) 
{ 
    return PartialView("MyPartial",model); 
} 

И частичный вид выглядит следующим образом -

@model MVC.Controllers.DDLModel 

<div> 
    @DateTime.Now - @Model.SelectedValue 
</div> 

Итак, когда мы выбираем пункт DROPDOWNLIST и нажмите на кнопку, мы имеем следующие выходные -

enter image description here

+0

Совершенные спасибо за это! @ramiramilu – codingNightmares

Смежные вопросы