【发布时间】:2014-03-21 07:11:10
【问题描述】:
我有一个控制器,它接受来自视图的一个参数,它应该将 json 数据返回到同一个视图。
关于我的控制器操作
public ActionResult GetDataById(int id)
{
var data = ...give me data...
return Json(data, JsonRequestBehavior.AllowGet);
}
我的观点
<ul id="#myList">
</ul>
(function () {
var updateList = function (competitions) {
$("#myList").html($("listTemplate").render(competitions))
.listview();
};
$(document).one("pageinit", function () {
var url = "/Home/GetDataById/1";
$.getJSON(url)
.then(updateList);
});
} ());
<script id="listTemplate" type="text/x-jsrender">
<li>
<a href="{{:Name}}">{{:Id}}
<span class="ui-li-count">{{:CountedData}}</span>
</li>
</script>
在调试 GetDataById 时根本没有命中。当我在调用 $.getJSON 之前放置 alert(url) 时,我得到了正确的 url。我在这里做错了什么?
更新: 路线配置是
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
namespaces: new[] { "MyWebApp.Controllers" },
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
【问题讨论】:
-
您能告诉我们您的路线配置吗?
-
控制器是否在你指定的命名空间内?
-
我把url放在浏览器地址栏,你得到响应了吗?只需要排除服务端就知道专注于客户端
标签: c# .net asp.net-mvc