您如何实现 Stackoverflow 中使用的 "add comment" 功能,用于 asp.net mvc?



如何使用MVC 3剃须刀(EF4)在Stackoverflow中重新创建添加评论功能?

以下是模型代码:

<div>add comment</div> 
<ul id="comments">                                          
@foreach (var comment in Model) {                           
    <li>@comment</li>                                       
}                                                           
</ul>                                                       
<form method="post" id="commentForm"                        
      action="@Url.Action("AddComment")">                   
    @Html.TextArea("Comment", new { rows = 5, cols = 50 })   
    <br />
    <input type="submit" value="Add Comment" />
</form> 

如何通过Ajax/jQuery进行添加/编辑评论?它应该是部分视图吗?

我不确定stackoverflow如何做到这一点,但是有几种方法可以实现同一件事。

通常,您会在页面上写一些jQuery来拦截表单帖子,然后使用Ajax发布数据。

  1. 您可以发布到Web API或仅返回JSON的操作。在服务器上,将注释添加到您正在使用的任何数据存储中,并以成功结果或保存评论的详细信息(由您决定)。完成后,使用jQuery在客户端渲染新条目 - 在您的情况下,只需在评论中添加一个新的LI。或

  2. 您可以发布返回部分视图的操作。保存评论,更新集合,然后呈现部分视图。在您的jQuery中,您可以用新内容替换整个评论部分。

这是一个非常广泛的问题,还有许多其他方法可以做到这一点。您可以使用SignalR之类的内容来从服务器中推出新注释(以实时进行),并且您可以使用JS模板框架(例如敲除JS),因此您只处理模板和一系列对象。

最新更新