【发布时间】:2014-12-29 16:55:25
【问题描述】:
所以我的 .cshtml 文件中有这个源代码:
@if (Model.IsAdmin)
{
$("#back-button").click(function () {
window.location.href = "@(Url.Action("ChooseEvent", "Console", new RouteValueDictionary { { "eventId", Model.EventId } }))";
});
}
这似乎导致各种构建时间错误出现在我的 VS2010 IDE 中,从“)预期”到“意外字符 '$'”。
我试过像这样包装'$':
<text>$("#back-button")</text>.click(function () {
window.location.href = Url.Action("ChooseEvent", "Console", new RouteValueDictionary { { "eventId", Model.EventId } });
});
但这会导致在第一个大括号上出现关于 ") expected" 的错误。
这是来自我正在尝试转换为 Razor 的旧 .aspx 文件。原始来源如下所示:
<% if (Model.IsAdmin)
{ %>
$("#back-button").click(function () {
window.location.href = "<%= Url.Action("ChooseEvent", "Console", new RouteValueDictionary { { "eventId", Model.EventId } }) %>";
});
<% } %>
jQuery 和 Razor 不为我合作。
如何克服这些错误?
【问题讨论】:
-
而不是使用jquery,你为什么不使用html helper 来代替呢?在你放置 id="back-button" 的位置,将其改为 @Html.ActionLink("","")?
标签: jquery .net asp.net-mvc razor razorengine