我正在尝试使用Ajax ActionLink将少量内容插入到视图中的div中。无论我尝试什么,而不是将视图中的其余HTML插入到div中,它会清除整个现有视图,并仅将部分视图发送到浏览器。
<div> Other Stuff</div>
@Ajax.ActionLink("Click here to see the latest review",
"LatestReview", new AjaxOptions
{
UpdateTargetId = "latestReview",
InsertionMode = InsertionMode.ReplaceWith,
HttpMethod = "GET",
LoadingElementId = "progress"
})
<div id="latestReview"></div>
<div>More Stuff</div>
所以我们从这个HTML开始:
<div> Other Stuff</div>
<a data-ajax="true" data-ajax-loading="#progress" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#latestReview" href="/Home/LatestReview">Click here to see the latest review</a>
<div id="latestReview"></div>
<div>More Stuff</div>
点击链接后我想要的是:
<div> Other Stuff</div>
<a data-ajax="true" data-ajax-loading="#progress" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#latestReview" href="/Home/LatestReview">Click here to see the latest review</a>
<div id="latestReview">[Content Of The Latest Review]</div>
<div>More Stuff</div>
但相反,我明白了:
<html><head></head><body>
<div class="review">
content of partial view
</div>
</body></html>
我已经尝试了InsertMode中的所有选项:InsertAfter,InsertBefore,Replace和ReplaceWith。我可能错过了一些简单的东西。只是不确定它是什么。
答案 0 :(得分:0)
问题原来是jquery文件之间的错过匹配。我下载了最新版本的jquery,jquery-ui和jquery.unobtrusive,然后就可以了。