【问题标题】:Anchor tag helper not working in MVC 6 AND Angular js锚标记助手在 MVC 6 和 Angular js 中不起作用
【发布时间】:2015-12-18 10:27:02
【问题描述】:

我有一个使用 MVC 6 和 的新 ASP.NET 5 项目。

我的网页数据绑定按预期工作,但是当我在项目中使用 MVC 6 Anchor TagHelper 时,数据绑定没有按预期工作。

 <div class="browse-movie-wrap col-lg-2 col-md-2 col-sm-3 col-xs-6" ng-repeat="movie in movies | filter:{IsPublished:true}">

CSHTML:

   {{ movie.Id }}  @*is working*@

<a asp-controller="Movie" asp-action="MovieDetail" asp-route-movieId="{{ movie.Id }}" class="browse-movie-link">
    @*this does not work*@
</div>

生成的 HTML:

<div class="browse-movie-wrap col-lg-2 col-md-2 col-sm-3 col-xs-6 ng-binding ng-scope" ng-repeat="movie in movies | filter:{IsPublished:true}">

228 //id is binded

<a class="browse-movie-link" href="/Movie/MovieDetail?movieId=%7B%7B%20movie.Id%20%7D%7D">

//but not binded anchor tag helper its remains movieID

注意:代码在同一页

我还在 MVC 存储库中打开了一个问题。你可以找到它here

【问题讨论】:

  • 你的 {{ 正在被 asp.最好完全在 angularJs 中生成这个 href。使用 ng-href。
  • @yeouuu ,是的,现在正在寻找 angular js.anyway 感谢您的建议

标签: angularjs angularjs asp.net-mvc-routing asp.net-core asp.net-core-mvc


【解决方案1】:

这就是你正在做的事情。

您正在向 ASP.NET 发送 代码。你看到问题了吗?你是在告诉 ASP.NET:

我的电影ID是{{ movie.Id }}

所以 ASP.NET 采用 {{ movie.Id }} 并将其编码到您的 URL 中。

您在服务器端概念中使用客户端代码。

【讨论】:

  • 您正在服务器上使用客户端评估代码。您在 MVC6 中使用 AngularJS 概念。这就像试图在三角形孔中安装一个方形块。它不会按原样工作。
  • 是的,我了解情况
  • 但是当使用 ng-href 我想我是硬编码的,就像这个控制器/动作/parm1={{id}}
  • 它成功了,但是我期望服务器端执行告诉它的客户端代码不要碰这个,
  • 抱歉有错别字,现在我正在发送我的移动设备
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-07
  • 1970-01-01
  • 2015-12-27
  • 2020-11-13
  • 2019-08-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多