【发布时间】:2014-04-29 18:27:02
【问题描述】:
我的应用中有一个浏览页面,人们可以在其中添加拥有或想要的项目。现在它正在重定向回一般 /browse 页面,但我希望页面根本不刷新。我正在尝试通过 ajax 来做到这一点,但在这方面我是超级新手,无法让它工作。这是我的代码,非常感谢您的帮助:
//HTML file
<div>
<center><div class="hover">+</div>
<div class="hovermenu"><a class="addown" pid="<%= p[i].id %>" href="#">✔</a></a></div></center>
</div>
$(".addown").click(function(e){
$.ajax({
type: 'POST',
url: '/addown/' + $(this).('pid'),
dataType: 'json',
success: function() {
$(this).parent().parent().replaceWith('<center><span>✔</span></center>')
}
})
e.preventDefault();
});
//Server side
app.post('/addown/:id', function(req, res) {
req.user.owned.addToSet(req.params.id);
req.user.save();
res.end();
});
非常感谢任何帮助!
【问题讨论】:
-
我不认为“this”是您在 ajax 调用之后所期望的。
-
所以我想说$(.addown),但是我如何指定我想要最初点击的那个?
-
保存,在ajax调用上方添加
var ref = this;,然后$(ref).parent...
标签: javascript jquery ajax express