在我看来,我有:ASP.NET MVC4 Ajax.ActionLink取代
@section Header {
@Scripts.Render("~/bundles/jqueryval")
}
<div>
<div>@Ajax.ActionLink("Test", "CurrentTime", new AjaxOptions { UpdateTargetId = "some_div", InsertionMode = InsertionMode.InsertAfter })</div>
</div>
<div id="some_div">
</div>
在结果页面看到这些脚本会被引用的标题:
<script src="/Scripts/jquery-1.6.4.js"></script>
<script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="/Scripts/jquery.validate.js"></script>
<script src="/Scripts/jquery.validate.unobtrusive.js"></script>
的链接看起来有像这样:
<div><a data-ajax="true" data-ajax-mode="after" data-ajax-update="#some_div" href="/Tournament/CurrentTime">Test</a></div>
在控制器:
public string CurrentTime()
{
return DateTime.Now.ToLongTimeString();
}
在我的web.config(在应用程序的根目录):
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
我的问题是:每当我点击链接,结果(当前时间)总是会替换整个页面 - 这是不在some_div之前/之后插入。 感谢
请在chrome或firefox中查看错误控制台。可能你的脚本没有加载 – 2013-05-03 19:00:43
@Garath:谢谢!萤火虫发现这一点: 类型错误:$(...)就不是一个函数 \t 的$(document)。在( “点击”, “一个[数据阿贾克斯=真]”,函数(EVT ){ 但我没有编辑脚本(至少我不知道这一点)。我请应如何解决呢?这是jquery.unobtrusive Ajax的文件。谢谢 – 2013-05-03 19:18:24