我正在使用asp.net mvc 3和jquery。
我想在我的网站上实施评论系统,能够进行投票和投票评论。我希望通过Ajax完成投票(无需重定向)。它应更新投票数并防止对该评论进一步投票。
有人可以解释我是如何做到的。我应该调用哪些jquery函数以及如何使用它们?
由于
答案 0 :(得分:1)
你的问题很广泛。您可以使用$.ajax()
函数向控制器操作发送AJAX请求,该操作会在给定问题ID的情况下将投票计数更新到数据库中:
$.ajax({
url: '<%= Url.Action("VoteUp") %>',
data: { questionId: 1234 },
success: function(result) {
alert('thanks for upvoting this question');
}
});
显然,控制器操作应检查当前登录的用户是否尚未提出此问题。
答案 1 :(得分:0)
您可以设计一个通用处理程序(.ashx)来处理数据库并使用ajax调用来调用它。 例如:
[WebService(Namespace = "http://www.mysite.com/webservices")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class UpVote : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
// Create this method to deal with your database
MakeUpVote(context.Request["commentID"].tostring()); // Comment ID is the input
} }
现在通过Ajax调用
调用方法$.ajax({
url: "UpVote.ashx",
type: "POST",
data: ({ "commentID": commentID }),
success: function(result) {
alert ("You have upvoted");}
});