0

所以我已经为这段代码苦苦挣扎了好几个小时,我觉得这只是错误的引号或没有转义符号的问题,但问题就在这里。我有一个 JSON 调用(在 javascript 中),它加载了一个 URL 列表(文章标题)。然后我将这些 url 动态添加到一个 Div,并使用 document.createElement 构建我的页面。

问题是我无法让来自 JSON 列表的参数在 Razor URL 字符串中工作。

var articleTitle = document.createElement("div");
                articleTitle.className = "articleTitle";
                articleTitle.innerHTML = '<a href="@Url.Action("Article", "Content", new { url = ' + article.Url + ', page = 1 }, null)">' + article.Title + '</a>';
                articlewrapper.appendChild(articleTitle);

{ url = ' + article.Url + ', 是这里的问题,我似乎无法获得实际值,链接现在只是打印出 article.Url。article.Title 工作得很好:)

4

1 回答 1

0

javascript 代码中的 article.Url 和 article.Title 是在检索 JSON 吗?我认为您的问题是您将 .NET 代码与来自 javascript 的代码混合在一起。

.NET 将首先在服务器上呈现,然后在 .NET 完成工作后,javascript 将接管客户端。

您可能需要尝试以下方法:

<script>
 var sampleAction = @Url.Action("Article", "Content", new { url='[replace]' }, page = 1} null);

 //... OTHER CODE ...

 articleTitle.innerHTML = '<a href=" + sampleAction.replace('[replace]', article.Url) +">' + article.Title + '</a>';
</script>
于 2012-04-30T21:01:27.590 回答