我在这里关注本教程:http://ddmvc4.codeplex.com/用于knockout.js。这是我第一次使用javascript,但我想我知道到目前为止我在做什么。
我有一个简单的对象数组:
var DummyCompetition = [
{
"Id": 1,
"Sport": 'Powerlifting',
"Title": 'Íslandsmeistaramót í klassískum kraftlyftingum',
"Country": 'Iceland',
"DateStart": new Date(2014, 2, 8),
"DateEnd": new Date(2014, 2, 8)
},
{
"Id": 2,
"Sport": 'Powerlifting',
"Title": 'Íslandsmeistaramót í kraftlyftingum',
"Country": 'Iceland',
"DateStart": new Date(2014, 4, 8),
"DateEnd": new Date(2014, 4, 8)
}
]
我尝试在像这样的函数中过滤id
var currentCompetition = $.grep(DummyCompetition, function (c) {
return c.Id == id;
});
currentCompetition = new Competition(currentCompetition[0]);
其中id来自网址var id = url.substring(url.lastIndexOf('/') + 1);
如果我运行我的页面,javascript将无法加载,但如果我使用for循环过滤数组,一切正常。
for (var i = 0; i < DummyCompetition.length; i++)
{
if (DummyCompetition[i].Id == id)
{
var currentCompetition = new Competition(DummyCompetition[i]);
break
}
}
我做错了什么?
答案 0 :(得分:0)
我发现了什么问题。 Visual Studio将@Scripts.Render("~/bundles/jquery")
视图的_Layout.cshtml
行放在@RenderBody()
行下面,因此它不会为我正在使用jQuery的视图加载它。
将其移至@Scripts.Render("~/bundles/modernizr")
修复它的顶部。