Desidero aggiornare la vista parziale ogni volta che si fa clic su ActionLink. Sto passando lo stesso modello alla vista parziale come vista principale. Il problema è che la vista parziale non viene aggiornata. Non sono sicuro se sono sulla buona strada.MVC Vista parziale aggiornamento Ajax
Vista:
@model MyPoll.Models.Poll
@Ajax.ActionLink("For", "AddPositive", new RouteValueDictionary { {"id", Model.Id }},new AjaxOptions() { UpdateTargetId = "countsDiv" })
<div id="countsDiv">
@Html.Partial("Counts", Model)
</div>
parziale:
@model MyPoll.Models.Poll
Positive count : @Model.PositiveCount
Negative count : @Model.NegativeCount
azione di controllo:
public ActionResult AddPositive(int id)
{
Poll poll = db.Polls.Find(id);
poll.PositiveCount++;
db.SaveChanges();
return View(poll);
}
Gli script a re riferimento così:
<script src="/Scripts/jquery.unobtrusive-ajax.min.js" type="text/javascript"></script>
<script src="/Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
<script src="/Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
sono '' MicrosoftAjax.js' e MicrosoftMvcAjax.js' fatto riferimento? E anche jQuery? –
@david, sì, lo sono. – mishap
hai eseguito il debug di base: controlla se hai errori js, se vedi la richiesta che viene effettuata, se l'azione del controller riceve le richieste, se i dati che vengono restituiti sono effettivamente aggiornati ?? –