Render partial view dynamisch in ASP.Net MVC3 Razor mit Ajax call-to-Action
Ich versuche zum erstellen einer einzelnen Seite das Formular zum erstellen einer 'Workitem'. Eine der Eigenschaften ist ein drop-down für 'Workitem-Typ'.
Je nach work-item-Typ, kann der Benutzer müssen zusätzliche Daten in einer name-Wert-paar style-Attribute grid (property sheet).
Ich würde gerne dynamisch Rendern Sie das Eigenschaftenblatt, sobald ein work-item-Typ ist, ausgewählt oder geändert werden. Sobald der Benutzer alle Informationen, er wäre auf Absenden zu erstellen, die 'Workitem'.
Dies ist, was ich habe, so weit:
@using (Ajax.BeginForm("AttributeData", new AjaxOptions() { UpdateTargetId="AttributeDataCell" }))
{
<div style="float:left">
@{
Html.RenderPartial("CreateWorkItemPartialView");
}
</div>
<div id="AttributeDataCell" style="float:right">
@Html.Action("AttributeData", new {id = 1})
</div>
}
Den AttributeData action im controller einfach macht die Teilansicht:
public ActionResult AttributeData(int id = 0)
{
var attributes = _workItemDataService.ListWorkItemTypeAttributes(id);
return PartialView("EditWorkItemAttributesPartialView", attributes);
}
Nun würde ich gerne Haken dieses bis zu der drop-down-Liste Auswahl-Ereignis, so dass die partiellen view neu gerendert, die in der obigen Tabelle Zelle bei jeder änderung der Selektion abgeschaltet werden. Ich würde gerne weitergeben, die in den ausgewählten Wert als id.
Einer Weise zu zwingen, die form zu Unterwerfen, sich selbst (und damit neu Rendern).
- Wenn, dass ist der richtige Ansatz, wie gehen wir es an? Esp., wie machen wir nur die Eigenschaft Blatt neu Rendern?
- Ob es einen besseren Weg, das zu erreichen die oben, bitte.
Dank
InformationsquelleAutor Raza Ali | 2011-11-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie abonnieren die
.change()
- Ereignis des dropdown-und löst einen AJAX-request:Update: in der ajax-Anfrage, habe ich die spezifische Methode, URL und id-Wert in den Daten, (die ich auch zurückgesetzt von AjaxForm zu HtmlForm) und es funktioniert alles Prima. Gott Sei Dank! ....Dank Darin.
Konnte, aktualisieren Sie diese Frage mit den funktionierenden code? Seine genau das, was ich bin nicht zu erreichen 🙂
InformationsquelleAutor Darin Dimitrov