带有javascript参数的MVC3 url

时间:2012-04-30 19:29:17

标签: asp.net-mvc razor

所以我几个小时以来一直在努力使用这段代码,我感觉它只是一个错误的引号或者没有转义符号,但问题就在这里。 我有一个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。文章。标题工作正常:))

1 个答案:

答案 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>