MVC 4-VIews/Partial Views and Forms - Jak zaktualizować tylko częściowy widok przy przesyłaniu?


Mam widok MVC 4, który zawiera formularz i częściowy widok. Widok główny zawiera informacje o produkcie, a widok częściowy zawiera zdjęcia produktów.
Chciałbym mieć częściowy widok zawierający własną formę, na której będą wyświetlane obrazy. Jeśli prześlę ten formularz do metody akcji kontrolera, zmienię model, na którym jest oparty, a następnie wymuszę aktualizację widoku częściowego przez metodę akcji, czy zmieni się tylko sekcja widoku częściowego mojego widoku głównego, a nie sam widok główny? Jeśli nie, czy jest lepszy sposób na zrobienie tego, co próbuję zrobić? Chcę tylko zaktualizować sekcję częściowego widoku głównego widoku.
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Jeśli chcesz zaktualizować tylko widok częściowy, musisz pobrać dane za pomocą wywołania AJAX. W ten sposób wywołujesz kontroler, który zwróci Ci żądany widok (w tym przypadku widok częściowy). Przykład:
CSHTML:
<div id="myPartialViewDiv">
@{Html.RenderPartial("myPartialView", Model);}

JS:
searchAdmin = function () { var URL = "myController/myAction"; $.get(URL, { "optionalArg": optionalArg }, function (data) {
$("#myPartialViewDiv").html(data);
})
}

myController:
public JsonResult myAction(string optionalArg)
{
// do something... return this.Json(whatIwantToReturn.ToList(), JsonRequestBehavior.AllowGet);
}

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się