所以我几个小时以来一直在努力使用这段代码,我感觉它只是一个错误的引号或者没有转义符号,但问题就在这里。 我有一个JSON调用(在javascript中),它加载了一个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。文章。标题工作正常:))
答案 0 :(得分:0)
是从.javascript代码检索JSON的article.Url和article.Title吗?我认为你的问题在于你将.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>