I mam ten przycisk edycji:
@Ajax.ActionLink(" ", "Edit", new { oid = item.memoOID }, new { id = "edit_" + item.memoOID })
Chciałbym wypełnić jednostkę z akcji kontrolera "Edytuj" i wysłać ją do okna dialogowego zdefiniowanego poniżej (chcę, aby zastąpił nową domenę.Model.memo() :
<div id="memoAddDialog" title="New Memo" style="display: none">
@Html.Partial("~/Views/Pat/newMemoDialog.cshtml", new Domain.Model.memo())
</div>
Z tym wyskakującym okienkiem:
function OpenMemoDialog() {
$("#memoAddDialog").dialog("open");
}
$("#memoAddDialog").dialog({
autoOpen: false,
height: 575,
width: 900,
dialogClass: "positioning24"
});
Po prostu nie wiem, jak przekazać wartość do tego częściowego widoku i potrzebuję kilku wskaźników; czy ktoś może pomóc?
2 odpowiedzi
Spróbuj tego
//In View
@Ajax.ActionLink("AjaxLink", "Edit", new { oid = item.memoOID ,id = "edit_"+item.memoOID }, new AjaxOptions { UpdateTargetId = "memoAddDialog", HttpMethod = "Post",OnSuccess="Success" })
<div id="memoAddDialog" title="New Memo" style="display: none">
</div>
<script type="text/javascript">
function Success()
{
//open your dialogbox here
$("#memoAddDialog").dialog("open");
}
</script>
W kontrolerze
[httpPost]
public ActionResult Edit(string oid , string id)
{
//perform your functionality
return PartialView("~/Views/Patient/newMemoPatientDialog.cshtml", new Mavi.Domain.Model.memo());
}
UWAGA: W Ajax.ActionLink musisz podać UpdateTargetId, w którym wynik pojawi się na stronie
Zrobiłbym coś takiego:
<a href="OpenMemoDialog('@(Url.Action("Edit", new oid = item.memoOID)')" />
Z OpenMemoDialog jako:
function OpenMemoDialog(url) {
$("#memoAddDialog").dialog("open");
$("#memoAddDialog").load(url);
}
MemoAddDialog to tylko pusty div, a akcja Edit powinna zwrócić widok częściowy.
Podobne pytania
Nowe pytania
jquery
jQuery to biblioteka JavaScript, rozważ także dodanie tagu JavaScript. jQuery to popularna biblioteka JavaScript działająca w różnych przeglądarkach, która ułatwia przechodzenie przez Document Object Model (DOM), obsługę zdarzeń, animacje i interakcje AJAX, minimalizując rozbieżności między przeglądarkami. Pytanie oznaczone tagiem jQuery powinno być powiązane z jQuery, więc jQuery powinno być używane przez dany kod i przynajmniej elementy związane z użyciem jQuery muszą znajdować się w pytaniu.