我在MVC ASP.NET中有用户控件,列出了特定图像的注释。我给了每条评论删除链接。现在我想使用Ajax链接删除该注释。请告诉我如何使用Ajax?
这是我的用户控件,我在删除链接上调用控制器操作:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="ListComment.ascx.cs" Inherits="gConnect.Views.Shared.ListComment" %>
<li>
<div class="question-info">
<div class="votes count"></span><span><% Response.Write("<img src=../../images/" + ViewData.Model.Logo_url.ToString() + " width=75 height=100 >");%> </div>
<div class="views "><span><%= ViewData.Model.Username.Substring(ViewData.Model.Username.IndexOf("-")+1) %></span></div>
<div class ="deletem" ><span><%= Ajax.ActionLink("Delete", "DeleteComment/" + ViewData.Model.Username.Substring(0, 2) + "." + ViewData.Model.Id, new AjaxOptions(UpdateTargetId = "comments"))%></span></div>
<div class="question">
<h3 class="title"><%= Html.Encode(ViewData.Model.Comment )%></h3>
</div>
</div>
</li>
答案 0 :(得分:1)
使用jQuery:
<script type="text/javascript">
function deleteComment(id) {
$.post(
"/MyController/DeleteAction",
{ id : id }
function (data) {
// do some gui updates
});
}
</script>
并在链接中使用:
<a onclick="deleteComment(<%= CommentId %>); return false;" href="#">Delete</a>
答案 1 :(得分:0)
使用更新面板。它将从您的删除链接捕获帖子并异步重新加载内容。
以http://www.asp.net/ajax/documentation/live/Tutorials/CreatingPageUpdatePanel.aspx为例说明一下。
希望有所帮助。
加文
答案 2 :(得分:0)
首先,确保您的删除链接发布表单。你的问题不清楚,但是因为你说你正在使用删除链接,我猜你正在使用GET这样做。修改资源的操作应该通过POST完成,而不是GET。
完成后,您可以使用jQuery AJAX form插件通过AJAX发布帖子。这很简单,一旦你有一个工作表单去删除,你会发现将其转换为使用AJAX插件来提交表单非常简单。只需关注the examples on the site。