Jquery 将服务器端@Url.Action替换为客户端锚标记

Jquery 将服务器端@Url.Action替换为客户端锚标记,jquery,ajax,asp.net-mvc,Jquery,Ajax,Asp.net Mvc,我有一个asp.NETMVC5应用程序,它显示用户的邮件,当用户单击其中一封邮件时,另一个动作会显示邮件内容。当我决定为收件箱启用分页时,我实现了通过ajax请求从api加载邮件列表 如何用客户端锚标记地址替换服务器端@Url.Action // This is server side code in the Inbox.chtml <tr class="unread"> <td class="mail-ontact"><a href="@Url.Actio

我有一个asp.NETMVC5应用程序,它显示用户的邮件,当用户单击其中一封邮件时,另一个动作会显示邮件内容。当我决定为收件箱启用分页时,我实现了通过ajax请求从api加载邮件列表

如何用客户端锚标记地址替换服务器端@Url.Action

// This is server side code in the Inbox.chtml
<tr class="unread">
    <td class="mail-ontact"><a href="@Url.Action("EmailView", "Mailbox", new {Id=@Model.Id})">@Model.Name</a></td>     
    <td class="mail-subject"><a href="@Url.Action("EmailView", "Mailbox", new {Id=@Model.Id})">@Model.Subject</a></td> 
    <td class="text-right mail-date">@Model.Time</td>
</tr>


//  Client side implemetation
//
//  inside success function
<tr class="${isMailRead}>"
    <td class="mail-ontact"> <a href="????">${name}</a></td>     // ??? should be http://my-domain/Mailbox/EmailView/2
    <td class="mail-subject"><a href="????">${subject}</a></td>  // how can i replace my-domain with proper value ?
    <td class="text-right mail-date">${composeTime}</td>
</tr>
//这是Inbox.chtml中的服务器端代码
@模型。时间
//客户端实现
//
//内部成功函数

您需要使用相对于站点根目录的URL,如
/MailBox/EmailView/${id}


浏览器将包括站点加载到的任何域。

您可以从ajax调用返回部分视图,并将该html附加到容器div中。它解决了web应用程序的问题。但是API的消费者不仅仅是web应用程序。