繁体   English   中英

jQuery附加html.ActionLink

[英]jQuery append with html.ActionLink

我试图像这样用jQuery附加Html.ActionLink

a.append("<li>@Html.ActionLink("e-TCGB","Inbox","Folder",new { Type = "1",DocumentTypeId = "3" },null)+"</li>");

它给出了错误。

在javascript和jQuery中经验不足,我不知道错误是由于错误的字符串参数还是因为做错了什么。

我的猜测是我犯了一个转义字符错误,但正如我所说,我也不知道我在做什么也是可能的。

@ Html.ActionLink是MVC中的一个辅助方法,旨在在Razor视图中使用。 它在服务器上执行,并在Razor视图呈现为HTML时进行处理。

jQuery是浏览器上使用的JavaScript库,因此此处执行是在浏览器收到HTML之后进行的。

概括地说,由于它是基于.net的服务器端方法,因此无法在浏览器上执行c#代码(ActionLink)。

“ Razor是在运行时编译的-意味着在执行jQuery代码之前已经完成了它的工作。

您可以简单地使用超链接:

var li = $('<li>');
var link = $('<a href="/folder/inbox/?type=1?documenttypeid=3">e-TCGB</div>');
li.append(link);
a.append(li);

更新:

在上面,您可以看到两个使用jQuery生成元素的示例。 第一个是生成新的<li>元素的简写:

$('<li>');

第二个是生成超链接标记。 如果要添加属性信息,可以用多种方法来实现,但是我更喜欢在生成元素时以较长的形式写出标签:

$('<a href="/folder/inbox/?type=1?documenttypeid=3">e-TCGB</div>');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM